Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 06:38

переделать код документа с версии 7.7 на 8.2

Автор Fire, 04 дек 2013, 10:14

0 Пользователей и 1 гость просматривают эту тему.

Fire

Доброе утро. Есть нетиповая база по защите топливных талонов на версии 7.7. В базе есть документ Поступление, который формирует топливные талоны и присваивает им штрих-код.
Нужно  сделать аналогичный документ в  базе на версии 8.8.  В модуле документа Поступление  в процедуре формирования талонов вылазиют ошибки. Если кто-то разбирается в 8.8 можете помочь? Зарание спасибо.

Процедура СоздатьТалоны()
Талон = СоздатьОбъект("Справочник.Талоны");
Тал = СоздатьОбъект("Справочник.Талоны");

таб.Очистить();
таб.Новаяколонка("Тал","Справочник.Талоны");
таб.НоваяКолонка("ШК","Строка",13);
Если созд = 1  Тогда
    СтатусВозврата(0);
Возврат;
КонецЕсли;
записать();
Провести();
если проведен() = 0 тогда
возврат;
КонецЕсли;
ВыбратьСтроки();
Пока ПолучитьСтроку() = 1 цикл
н = 1;
Пока н<=количество цикл

Талон.Новый();
    Талон.Владелец1 = Получатель;
Талон.Литраж   =  Литраж;
Талон.Процент  =  Процент;
Талон.Использован = 0;
Талон.НовыйТ      = 1;
Талон.Док      = текущийДокумент();
Талон.Записать();

КодТовара = ДополнитьСтрокуЛ(Число(СокрЛ(Прав(Талон.Код, 6))), "0", 7);

Для Сч = 1 По 999 Цикл

ДопКод = ДополнитьСтрокуЛ(Строка(Сч), "0", 3);
ВремШтрихкод = СформироватьШтрихкод("20", КодТовара + ДопКод);

Если Тал.НайтиПоРеквизиту("ШтрихКод", ВремШтрихкод, 1) = 0 Тогда
СформировалиУникальныйШтрихкод = 1;
Прервать;
КонецЕсли;

КонецЦикла;

Если СформировалиУникальныйШтрихкод = 0 Тогда

// Сформируем штрих-код независимо от кода номенклатуры

Для Сч = 1 По 9999999999 Цикл // 10 разрядов

ДопКод = ДополнитьСтрокуЛ(Строка(Сч), "0", 10);
ВремШтрихкод = СформироватьШтрихкод("20", ДопКод);

Если Тал.НайтиПоРеквизиту("Штрихкод", ВремШтрихкод, 1) = 0 Тогда
СформировалиУникальныйШтрихкод = 1;
Прервать;
КонецЕсли;
КонецЦикла;
КонецЕсли;

Талон.ШтрихКод = ВремШтрихкод;

Талон.Записать();

таб.НоваяСтрока();
таб.тал = Талон.ТекущийЭлемент();


н = н+1;
конецЦикла;

КонецЦикла;
созд  = 1;

КонецПроцедуры

LordWizard

Ну так в 8-ке сначала ввести справочники соответствующие,потом допиливать.
Правильно ведите учет или пишите программы и вам воздастся!...

(Кстати - кнопочку Сказать Спасибо - никто не отменял)

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск