Проблема с Штрихкодом на коробке!

Тема в разделе "1C и всё что с ней связано", создана пользователем Farhad, 20 мар 2008.

  1. Farhad

    Farhad Гость

    Один программист программировал вот это для нас:

    Код (Text):
    Функция СШКНеизвестныйКод(Штрихкод, ТипКода, СШК) Экспорт

    СтрокаШК = "";
    стр="0123456789";
    Если ТипКода =  ПланыВидовХарактеристик.ТипыШтрихкодов.Code39 Тогда
    Для М=1 по стрдлина(Штрихкод)Цикл
    сим = Сред(Штрихкод,М,1);
    Если найти(стр,сим)>0 тогда
    СтрокаШК=СтрокаШК+сим;
    ИначеЕсли СтрДлина(СтрокаШК)>0 И Сим=" " Тогда
    //Это ШК
    Прервать;    

    КонецЕсли;
    КонецЦикла;
    Если НЕ СтрокаШК="" Тогда
    Эл=Справочники.Номенклатура.НайтиПоНаименованию(СтрокаШК, истина);
    Если НЕ Эл=Справочники.Номенклатура.ПустаяСсылка() тогда
    Ответ = СШКНоменклатура(Эл, , , Справочники.Качество.Новый, Эл.ЕдиницаХраненияОстатков, 6, СШК);
    Возврат Ответ;
    КонецЕсли;
    КонецЕсли;

    КонецЕсли;
    Возврат Ложь;


    КонецФункции // СШКНеизвестныйКод()
    Но работает это не так как надо!
    Каждый раз, когда сканировать один и тоже товар, он прибавляет на новую строку!!! Как это решить?
     
  2. Zab

    Zab Well-Known Member
    1C Team

    Регистрация:
    7 авг 2006
    Сообщения:
    583
    Симпатии:
    0
    Позвольте полюбопытствовать, просто любопытно, русский язык для вас родной?
     
  3. Farhad

    Farhad Гость

  4. Zab

    Zab Well-Known Member
    1C Team

    Регистрация:
    7 авг 2006
    Сообщения:
    583
    Симпатии:
    0
    Антиоффтоп: Как я понял, код должен искать по штрихкоду существующий элемент, а новый добавлять только в случае, если такого нет. А он добавляет элемент всегда.
    Дело в том, что в этом фрагменте нет кода создания элемента справочника, он создается или в СШКНоменклатура(), или где-то до/после вызова СШКНеизвестныйКод()

    Если СШКНоменклатура() просто создает номенклатуру, то, скорее всего надо строку
    "Если НЕ Эл=Справочники.Номенклатура.ПустаяСсылка() тогда"
    записать без НЕ.
     
  5. Farhad

    Farhad Гость

    В таком случи он пишет:

    [​IMG]

    Нам нужен толка строка "1623" (это наименования товара), а остальные игнорировать. Потому что у каждой коробке свой номер, не смотря на то что товары одинаковые.

    А вот и сам штрихкод:

    [​IMG]
     
  6. kaa

    kaa Гость

    Код функции в студию :)
     
  7. Farhad

    Farhad Гость

    Код (Text):
    Функция СШКНоменклатура(Номенклатура, Характеристика, Серия, Качество,
    Единица, Количество, СШК) Экспорт

    Результат      = Истина;
    ИмяТекСтраницы  = ЭлементыФормы.ОсновнаяПанель.ТекущаяСтраница.Имя;
    СтруктураПодбора = РаботаСТорговымОборудованием.СформироватьСтруктуруПодбора(Дата, Номенклатура, Характеристика,
    Серия, Качество, Единица,
    Количество, Неопределено,
    Неопределено, Ложь,
    Неопределено);

    Если     ИмяТекСтраницы = "Товары" Тогда
    ОбработкаПодбора(Товары, СтруктураПодбора);
    ИначеЕсли ИмяТекСтраницы = "Тара" Тогда
    ОбработкаПодбора(ВозвратнаяТара, СтруктураПодбора);
    Иначе
    Предупреждение("На странице """
    + ИмяТекСтраницы
    + """ подбор номенклатуры не предусмотрен.");
    КонецЕсли;

    Возврат Результат;

    КонецФункции // СШКНоменклатура()
     
  8. Zab

    Zab Well-Known Member
    1C Team

    Регистрация:
    7 авг 2006
    Сообщения:
    583
    Симпатии:
    0
    Судя по коду функции, мое предположение не верно...

    ... а еще подумалось, что и
    он элемент справочника добавляет, или строку в документ? Что-то мне подумалось, что второе. Тогда, все написанное ранее можешь забыть. Проблема не в этих функциях. Смотрите после их вызова.
     
Загрузка...
Похожие Темы - Проблема Штрихкодом на
  1. Renat11111
    Ответов:
    5
    Просмотров:
    3.138
  2. c0de3r
    Ответов:
    4
    Просмотров:
    108
  3. DobermannTT
    Ответов:
    10
    Просмотров:
    129
  4. SoulPaladin
    Ответов:
    3
    Просмотров:
    117
  5. Artael
    Ответов:
    1
    Просмотров:
    106

Поделиться этой страницей