|   |   | 
| 
 | Создание документов на основании ТЗ | ☑ | ||
|---|---|---|---|---|
| 0
    
        Валидатор 10.01.14✎ 14:52 | 
        Есть таблица документов, в ней куча строк с другими документами (списание товаров), нужно сделать, чтобы для всех этих списаний создавалось 1 ПТИУ с количеством товаров из каждого списания из ТЗ. Как сделать такое условие? делал так: 
 Для каждого строка из ВремТаблица Цикл Если ТипЗНЧ(Строка.ДокументПриемник) = Тип("ДокументСсылка.СписаниеТоваров") Тогда ДокументПоступления = Документы.ПоступлениеТоваровУслуг.СоздатьДокумент(); Иначе Продолжить; КонецЕсли; КонецЦикла; Но ведь в таком случае на каждую строку будет новый документ создаваться | |||
| 1
    
        Валидатор 10.01.14✎ 14:53 | 
        А перед циклом тоже не создать документ, потому что мы сначала должны посмотреть какой тип в Строка.Документприменик     | |||
| 2
    
        zladenuw 10.01.14✎ 14:54 | 
        ДокументПоступления = Неопределено;
 Для каждого строка из ВремТаблица Цикл Если ТипЗНЧ(Строка.ДокументПриемник) = Тип("ДокументСсылка.СписаниеТоваров") и ДокументПоступления = Неопределено Тогда ДокументПоступления = Документы.ПоступлениеТоваровУслуг.СоздатьДокумент(); Иначе //заполняем КонецЕсли; КонецЦикла; | |||
| 3
    
        МихаилМ 10.01.14✎ 14:55 | 
        офильтруйте в тз нужные данные и создайте  ТЧ на основе отфильтрованной     | |||
| 4
    
        Валидатор 10.01.14✎ 14:55 | 
        (2) на иначе нужно получать же документ будет так?     | |||
| 5
    
        Валидатор 10.01.14✎ 14:58 | 
        а хотя нет, у нас же про неопределено есть условие     | |||
| 6
    
        Валидатор 10.01.14✎ 15:00 | 
        и в ТЗ моей есть документы списания с датами документа, а поступление мне нужно создавать датой на день меньше, чем минимальная дата списания, вот тут как быть?     | |||
| 7
    
        Валидатор 10.01.14✎ 15:18 | 
        и вот еще:
 Для каждого строка из ВремТаблица Цикл Если ТипЗНЧ(Строка.ДокументПриемник) = Тип("ДокументСсылка.ТребованиеНакладная") и ДокументПоступления = Неопределено Тогда в таком случае цикл идет по 1 строке ВремТаблицы, создается документ, потом цикл заканчивается, и идет по второй строчке, тем самым пропуская заполнение данных из ТЧ первого документа | |||
| 8
    
        Валидатор 10.01.14✎ 15:18 | 
        ДокументПоступления = Неопределено;
 Для каждого строка из ВремТаблица Цикл Если ТипЗНЧ(Строка.ДокументПриемник) = Тип("ДокументСсылка.ТребованиеНакладная") и ДокументПоступления = Неопределено Тогда ДокументПоступления = Документы.ПоступлениеТоваровУслуг.СоздатьДокумент(); ДокументПоступления.Дата = ТекущаяДата(); Иначе Для каждого стр из строка.ДокументПриемник.Материалы Цикл ТЧДокумента = ДокументПоступления.Товары.Добавить(); ТЧДокумента.Номенклатура = стр. Номенклатура; ТЧДокумента.Количество = стр.Количество; КонецЦикла; КонецЕсли; Попытка ДокументПоступления.Записать(); Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; КонецЦикла; | |||
| 9
    
        Валидатор 10.01.14✎ 15:40 | 
        ап     | |||
| 10
    
        Zubek 10.01.14✎ 16:39 | 
        Если Нужен один документ ПТИУ, то создай его до цикла по ВремТаблице. А внутри цикла добавляй только новые строки в ТЧ. После выхода из цикла запиши документ     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |