Имя: Пароль:
1C
1С v8
Программное изменение штрикхода
0 Tumakota
 
18.07.18
10:02
Появилась задача, изменить штрихкода в районе 5000 тысяч, руками конечно это нереально. (Конфигурация Управление торговлей 11.4). В регистре штрихкод, теперь одно измерение это сам штрихкод.

        Набор = РегистрыСведений.ШтрихкодыНоменклатуры.СоздатьНаборЗаписей();
        Набор.Отбор.Штрихкод.Установить(СокрЛП((Excel.Cells(НачальнаяСтрока,КолонкаШтрихкодаПоиск).Text)));
        Набор.прочитать();
        если Набор.количество() > 0 тогда
            для каждого запись из Набор Цикл
                запись.ШтрихКод = СокрЛП((Excel.Cells(НачальнаяСтрока,КолонкаШтрихкодЗамена).Text));
            конеццикла
        КонецЕсли;
        
        Набор.Записать();


Поэтому при записи он выдает мне ошибку что новая запись не соответствует отбору. Как программно перезаписать штрихкод в УТ 11
1 hhhh
 
18.07.18
10:03
(0) создать новый штрихкод, старый стереть.
2 Cool_Profi
 
18.07.18
10:12
Через менеджер записи попробуй. Или тупо скулем.
3 hhhh
 
18.07.18
10:14
(0) просто штрихкод - это измерение. Набор по одному значению измерения. Значит два набора должно быть.
4 Tumakota
 
18.07.18
10:18
В принципе все норм вот тут только не удаляет)

        Набор = РегистрыСведений.ШтрихкодыНоменклатуры.СоздатьНаборЗаписей();
        Набор.Отбор.Штрихкод.Установить(СокрЛП((Excel.Cells(НачальнаяСтрока,КолонкаШтрихкодаПоиск).Text)));
        Набор.прочитать();
        если Набор.количество() > 0 тогда
            для каждого запись из Набор Цикл
                Номенклатура = Запись.Номенклатура;
                Характеристика = Запись.Характеристика;
                Единица = Запись.Упаковка;
            конеццикла;
            
        Набор.Удалить(Запись);
        КонецЕсли;
        
        
        новШк = РегистрыСведений.ШтрихкодыНоменклатуры.СоздатьМенеджерЗаписи();
        новШк.Номенклатура     = Номенклатура;
        новШк.Упаковка = Единица;
        новШк.Характеристика     =    Характеристика;
        новШк.Штрихкод = СокрЛП((Excel.Cells(НачальнаяСтрока,КолонкаШтрихкодЗамена).Text));
        новШк.Период = ТекущаяДата();
        Попытка
            новШк.Записать();
        Исключение
        КонецПопытки;
5 hhhh
 
18.07.18
10:20
(4) набор.записать()

забыл
6 Tumakota
 
18.07.18
10:22
Все всем спкасибо:)
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс