|   |   | 
| 
 | Ошибка в Общий модуль.Работа с торговым оборудованием | ☑ | ||
|---|---|---|---|---|
| 0
    
        kandakov_pv 23.06.12✎ 10:45 | 
        всем доброго времени суток, возникла такая проблема:
  Буквально на днях задавал вопрос на форуме про то как добавить в ценник штрихкод, обработка запускается, но при нажатии кнопки печать вылетает вот это: {ОбщийМодуль.РаботаСТорговымОборудованием(366)}: Преобразование значения к типу Число не может быть выполнено Четн = Четн + Сред(ШтрихКод, 2 * Индекс, 1); Как быть, подскажите пожалуйста | |||
| 1
    
        Любопытная 23.06.12✎ 11:15 | 
        Смотреть, что в переменной Индекс     | |||
| 2
    
        Rie 23.06.12✎ 11:17 | 
        (1) +1
  А ещё - что в переменной Четн изначально было. | |||
| 3
    
        Любопытная 23.06.12✎ 11:20 | 
        Ну да, если там ссылка на какой-нить справочник, то к ней вряд ли что-то прибавишь)     | |||
| 4
    
        Rie 23.06.12✎ 11:28 | 
        (3) И если она не инициализирована (то есть, Неопределено) - то будет как раз такое сообщение.     | |||
| 5
    
        Любопытная 23.06.12✎ 11:31 | 
        (4) Спасибо, буду знать     | |||
| 6
    
        kandakov_pv 23.06.12✎ 11:43 | 
        Извирите конечно за ламерство, можно как то на пальцах где это посмотреть?     | |||
| 7
    
        Rie 23.06.12✎ 11:51 | 
        (6) О какой конфигурации идёт речь? Это обычное приложение или управляемое?     | |||
| 8
    
        Любопытная 23.06.12✎ 11:51 | 
        (6) Отладчик в зубы     | |||
| 9
    
        kandakov_pv 23.06.12✎ 11:59 | 
        Конфигурация Управление Торговлей 10,3     | |||
| 10
    
        Rie 23.06.12✎ 12:01 | 
        Вообще говоря, несколько странная ситуация. Судя по всему, ошибка возникает при подсчёте контрольной суммы EAN.
  Помимо Четн и Индекс, там ещё участвует Сред(ШтрихКод,2*Индекс,1) - очередная цифра штрих-кода. Причём это как раз - строка, которой предстоит автоматически преобразоваться в число. Если ТС не ковырялся бодро в конфигурации - то Четн инициализирована, и Индекс - просто замечательный. Отсюда вывод: в штрих-коде попалась не цифра. И возникает следующий вопрос - а что ТС подсунул несчастной функции вместо EANовского штрих-кода? | |||
| 11
    
        kandakov_pv 23.06.12✎ 12:11 | 
        и как посмотреть что он ей подсунул?     | |||
| 12
    
        rs_trade 23.06.12✎ 12:14 | 
        позовите специалиста     | |||
| 13
    
        kandakov_pv 23.06.12✎ 12:16 | 
        я бы с радостью... только у нас все ленивые работать не хотят, звал не идут     | |||
| 14
    
        Rie 23.06.12✎ 12:18 | 
        (13) А деньги за работу платить не пробовали? :-)
  (11) Отладчиком, к примеру. При сканировании какого именно штрих-кода было получено сообщение об ошибке из (0)? | |||
| 15
    
        kandakov_pv 23.06.12✎ 12:24 | 
        деньги пробовали, только 1с не лицензия, и почему то сразу даже за деньги не захотели...     | |||
| 16
    
        kandakov_pv 23.06.12✎ 12:25 | 
        Ошибка возникает когда пытаюсь ценник на печать из формы отправить.
  А так все коды занесены в EAN13 | |||
| 17
    
        Rie 23.06.12✎ 12:28 | 
        (15) Купите лицензионную, кто ж мешает-то?
  (16) Я пока что схожу за утюгом и паяльников, а ТС тем временем попробует вспомнить, какой именно код отправлялся на печать, когда он получил сообщение об ошибке из (0) :-) | |||
| 18
    
        Rie 23.06.12✎ 12:29 | 
        +(17) А заодно - как выглядит процедура отправки ценников на печать?     | |||
| 19
    
        kandakov_pv 23.06.12✎ 12:32 | 
        мешает отсутствие на данный момент 20 т.р.     | |||
| 20
    
        kandakov_pv 23.06.12✎ 12:32 | 
        Функция ПечатьЭтикетка() Экспорт
  Если НЕ ЗначениеЗаполнено(Организация) Тогда Предупреждение("Не выбрана организация!"); Возврат Неопределено; КонецЕсли; ТабДокумент = Новый ТабличныйДокумент; ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_Ценник"; Макет = ПолучитьМакет("Этикетка"); ОбластьЦенника = Макет.ПолучитьОбласть("Строка|Столбец"); ДатаПечати = РабочаяДата; ТекСтолбец = 0; ТекСтрока = 0; Для Каждого СтрокаТаблицы Из Товары Цикл Если СтрокаТаблицы.Печать Тогда Для Тмп = 1 По СтрокаТаблицы.Количество Цикл ОбластьЦенника.Параметры.Заполнить(СтрокаТаблицы); ОбластьЦенника.Параметры.НоменклатураНаименование = СтрокаТаблицы.Номенклатура.НаименованиеПолное; ОбластьЦенника.Параметры.ЕдиницаНаименование = СтрокаТаблицы.ЕдиницаИзмерения; ОбластьЦенника.Параметры.Цена = ОбщегоНазначения.ФорматСумм(СтрокаТаблицы.Цена, Валюта, "00"); ОбластьЦенника.Параметры.ДатаПечати = ДатаПечати; ОбластьЦенника.Параметры.Организация = Организация; ОбластьЦенника.Параметры.ОрганизацияНаименование = Организация; ТипШтрихкода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN13; ТипКода = ПолучитьЗначениеТипаШтрихкодаДляЭУ(ТипШтрихкода); Если ТипКода = -1 Тогда ОбщегоНазначения.СообщитьОбОшибке("Для штрих-кода формата """ + ТипШтрихкода + """ не существует соответствующего типа в ЭУ ""1С:Печать штрих-кодов"". | Позиция будет пропущена"); КонецЕсли; вШтрихКод = ШтрихКод + "00"; //Формат(Склады.Постфикс,"ЧЦ=2;ЧВН=1;ЧН=00"); вШтрихКод = вШтрихКод + РаботаСТорговымОборудованием.КонтрольныйСимволEAN(вШтрихКод, 13); Если РаботаСТорговымОборудованием.ПроверитьШтрихКод(вШтрихКод, ТипКода) Тогда ОбластьЦенника.Рисунки.Штрихкод.Объект.ТипКода = ТипКода; ОбластьЦенника.Рисунки.Штрихкод.Объект.Сообщение = вШтрихКод; КонецЕсли; Если ТекСтолбец = 0 Тогда ТабДокумент.Вывести(ОбластьЦенника); Иначе ТабДокумент.Присоединить(ОбластьЦенника); КонецЕсли; ТекСтолбец = ТекСтолбец + 1; Если ТекСтолбец = 5 Тогда ТекСтрока = ТекСтрока + 1; ТекСтолбец = 0; КонецЕсли; Если ТекСтрока = 3 Тогда ТекСтрока = 0; ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц(); КонецЕсли; КонецЦикла; КонецЕсли; КонецЦикла; ТабДокумент.ТолькоПросмотр = Истина; Возврат ТабДокумент; КонецФункции // | |||
| 21
    
        Rie 23.06.12✎ 12:36 | 
        А теперь - всё тот же вопрос: какой штрих-код пытались напечатать-то, когда выскочило сообщение об ошибке из (0)?!
  Откуда берётся ШтрихКод в приведенной в (20) процедуре? | |||
| 22
    
        Rie 23.06.12✎ 12:39 | 
        +(21) Причина ошибки в том, что в печатаемом штрих-коде у тебя откуда-то взялся символ, не являющийся цифрой (вполне возможно, кстати, что это - пробел). Вот и помедитируй над тем, откуда он там.     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |