Sendman
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Здравствуйте! Вот решил немного поковырять 1С 8.1 Управление торговлей. Возник вопрос который ни как не могу победить... В 1С 7.7 Торговля+Склад был создан документ "Гарантийный талон", который вводился на основании реализации, Его код был следующим: Код: Процедура ВводНаОсновании (ДокОсн) ДокОснование=ДокОсн; Контрагент=ДокОсн.Конрагент; Фирма=ДокОсн.Фирма; ДокОсн.ВыбратьСтроки(); Пока ДокОсн.ПолучитьСтроку()=1 Цикл Для Ном=1 по ДокОсн.Количество цикл НоваяСтрока(); Номенклатура=ДокОсн.Номенклатура; СрокГаранти=Номенклатура.СрокГарантии; Количество=1; КонецЦикла; КонецЦикла; КонецПроцедуры Процедура Заполнить(ДокОснование) ДокОсн=ДокОснование; Контрагент=ДокОсн.Конрагент; Фирма=ДокОсн.Фирма; ДокОсн.ВыбратьСтроки(); Пока ДокОсн.ПолучитьСтроку()=1 Цикл Для Ном=1 по ДокОсн.Количество цикл НоваяСтрока(); Номенклатура=ДокОсн.Номенклатура; СрокГаранти=Номенклатура.СрокГарантии; Количество=1; КонецЦикла; КонецЦикла; КонецПроцедуры Функция УстШтрихкод(Штрихкод) Штрихкод=СокрЛП(Штрихкод); Если Найти(глПрефиксШтрихкода(), Лев(Штрихкод,1))>0 Тогда Штрихкод=Сред(Штрихкод,2); КонецЕсли; Возврат Штрихкод; КонецФункции Процедура ОбработкаВнешнегоСобытия(Источник,Событие,Данные) Если Событие = "BarCodeValue" Тогда СерийныйНомер=УстШтрихкод(Данные); КонецЕсли; глСканерПосылкаДанных(1); КонецПроцедуры | Подскажите как это все написать в 1С 8.1? Фишка вся в том, что при вводе на основании если в реализации одной позиции номенклатуры несколько штук, то в Гарантийнике нужно разбить их по 1 шт. , т.е. если например, в Реализации, стоит чайник - 2 шт., то в гарантийнике должно получиться две строчки "Чайник" по 1 шт., т.к. серийники разные.. |