Имя: Пароль:
1C
1С v8
КодАртикула в фискальном регистраторе - Артикул товара или служебноый код ФР?
0 vladimir-boy
 
12.09.13
23:47
Добрый вечер!
Собственно вопрос в сабже.
Спасибо за ответ
1 vladimir-boy
 
12.09.13
23:54
В этом контексте в обработке обслуживания ФР, что означает код Артикула? :

Функция ПечататьСтроку(Объект, Наименование, Количество, Цена,
                       Скидка, Отдел, НДС, Код=0) Экспорт
Перем ЕдиницаВНаименовании, ДлинаНаименования, Порт;
        
    Результат  = мНетОшибки;
    
    // Получение параметров
    Объект.Параметры.Свойство("ЕдиницаВНаименовании", ЕдиницаВНаименовании);
    ЕдиницаВНаименовании = Формат(ЕдиницаВНаименовании,"ЧГ=0");
    
    Если ЕдиницаВНаименовании = 1 Тогда
        Объект.Параметры.Свойство("ДлинаНаименования", ДлинаНаименования);
        ДлинаНаименования = Формат(ДлинаНаименования,"ЧГ=0");
        Если НЕ ЗначениеЗаполнено(ДлинаНаименования) Тогда
            Сообщить(НСтр("ru='Не задано значение параметра ДлинаНаименования!';uk='Не задане значення параметра ДлинаНаименования!'"));
            ДлинаНаименования = 48;
        КонецЕсли;
    КонецЕсли;
    
    //Получение кода товара из параметров    //См. Обработка ТОСервер
    Если Код = 0 Тогда
        Объект.Параметры.Свойство("Код", Код);
    КонецЕсли;
    
    ЗаполнитьАртикулы() ;
    
    // вычисление значений для программирования ЭККА
    НалоговаяГруппа = мНДС.Получить(НДС);
    
    Делимость = 1; // Не используется в Датекс 3530Т

    Если СЗ.Количество()=0 Тогда
        Арт = Неопределено;    
    Иначе
        Арт = СЗ.Найти(СокрЛП(Строка(Код)), "ТоварКод");    
    КонецЕсли;
            
    Если Арт = Неопределено Тогда
        //присвоить новый    
        КодАртикула = СЗ.Количество()+1;
        Если КодАртикула > МаксКоличествоАртикулов Тогда
            Объект.ОписаниеОшибки = НСтр("ru='Необходимо снять Z-отчет.';uk='Необхідно зняти Z-звіт.'");
            Объект.Драйвер.ClosePort(); //закрываем порт
            Результат = мОшибкаНеизвестно;
            Возврат Результат;
        КонецЕсли;
        
        // Программирования артикула в ККМ
        Объект.Драйвер.SetArticle(КодАртикула,НалоговаяГруппа,1,Окр(Цена,2), ПарольАдминистратораККМ, Наименование);
                
        Если Объект.Драйвер.LastError <> 0 Тогда
               Объект.ОписаниеОшибки = НСтр("ru='Ошибка ' ;uk='Помилка !'")+ Объект.Драйвер.LastErrorText ;
            Объект.Драйвер.ClosePort(); //закрываем порт
            Результат = мОшибкаНеизвестно;
            Возврат Результат;
        КонецЕсли;    
        ЗаписатьВФайл(КодАртикула, Строка(Код), Наименование , Окр(Цена,2) , НалоговаяГруппа , Делимость);        
    Иначе
        // проверяем на наличие критичных изменений параметров товара
        Если ((СокрЛП(Арт.ТоварНаименование) <> Лев(СокрЛП(Наименование),50)) ИЛИ (Арт.ТоварНГ <> НалоговаяГруппа)) Тогда
            КодАртикула = СЗ.Количество() + 1;
            // Программирования артикула в ККМ
            Объект.Драйвер.SetArticle(КодАртикула,НалоговаяГруппа,1,Окр(Цена,2),ПарольАдминистратораККМ,Наименование);
            Если Объект.Драйвер.LastError <>0 Тогда
                   Объект.ОписаниеОшибки = НСтр("ru='Ошибка ';uk='Помилка !'")+ Объект.Драйвер.LastErrorText;
                Объект.Драйвер.ClosePort(); //закрываем порт
                Результат = мОшибкаНеизвестно;
                Возврат Результат;
            КонецЕсли;
            СтеретьКодВФайле(СокрЛП(Арт.Артикул));
            ЗаписатьВФайл(КодАртикула, Строка(Код), Наименование , Окр(Цена,2) , НалоговаяГруппа , Делимость);
        Иначе
            КодАртикула = Арт.Артикул;     // артикул уже имеющийся
        КонецЕсли;    
    КонецЕсли;
    
    // продажа товара на ККМ
    Объект.Драйвер.RegistrItemEx(КодАртикула, Количество, Цена, -Скидка, 0);    
    Если Объект.Драйвер.LastError <> 0 Тогда
        Объект.Драйвер.CancelReceipt();//отмена чека
        Объект.Драйвер.ClosePort();
        Объект.ОписаниеОшибки = НСтр("ru='Ошибка !';uk='Помилка !'")+ Объект.Драйвер.LastErrorText ;
        Результат = мОшибкаНеизвестно;
    КонецЕсли;

    Возврат Результат;
КонецФункции // ПечататьСтроку()
2 vladimir-boy
 
13.09.13
00:22
(2) КодАртикула