Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Войти | Зарегистрироваться )



История благодарностей участнику homemail ::: Спасибо сказали: 3 раз
Дата поста: В теме: За сообщение: Спасибо сказали:
13.09.13, 14:25 Аннулирован чек
Цитата(nickles @ 12.09.13, 20:48) *
Здравствуйте.
Фискальный принтер Датекс 3530Т. При печати иногда выводит, что "Аннулирован чек".
Удалось определить, что при установке артикула (SetArticle) одна и та же позиция товара в разных чеках, может проходить, либо аннулироваться. Цена одна и та же.


Добрый день. Сталкивался с такой ситуацией. Поборол след. образом. До открытия фиск. чека проверяю программировался ли этот артикул и если да, то проверяю менялась ли цена. Код ниже

Функция РезультатПроверкиАртикула(Объект,Товар) Экспорт
    Результат=Объект.Драйвер.GetArtInfo(Число(Товар.Артикул));                     // читем информацию о артикуле в Датексе
    Если Не ЗначениеЗаполнено(Результат) Тогда                                     // Товара в датексе нет и мы его программируем ...
        ПризнакСтавкиНДС=?(Товар.Номенклатура.СтавкаНДС=Перечисления.СтавкиНДС.НДС20,192,193);
        Если Объект.Драйвер.ProgramArt(ПризнакСтавкиНДС,Число(Товар.Артикул),1,Товар.Цена,"0000",Лев(СокрЛП(Товар.Номенклатура.Наименование),24))=0 Тогда
            //[in] unsigned char Tax -  налоговая группа (возможные значения - А, Б, В, Г, Д),
            //      передается не строкой,а числом
            //[in] int NumArt - номер артикула, под которым артикул будет известен регистратору для
            //      проведения продаж и возвратов (от 1 до 14800).
            //[in] int Group - номер товарной группы (от 1 до 99)
            //[in] double Price - стоимость единицы товара
            //[in] BSTR Password - пароль оператора для программирования (по умолчанию в регистраторе этот пароль "0000")
            //[in] BSTR Name - название артикула (24 символа, либо две строки не более 24 символа в каждой разделенные
            //        символом 09H)
            Предупреждение("Невозможно присвоить артикул - сообщите в офис !"); Возврат Неопределено;
        КонецЕсли;
    Иначе         // Товар уже программировался - проверка
        Для инд=1 По 8 Цикл поз=Найти(Результат,",");
            Если инд=1 Тогда АртикулДатекса=Лев(Результат,поз-1); КонецЕсли;
            Результат=Прав(Результат,СтрДлина(Результат)-поз);     
            Если инд=3 Тогда поз=Найти(Результат,","); ЦенаДатекса=Число(Лев(Результат,поз-1)); КонецЕсли;
        КонецЦикла;
        Если Число(АртикулДатекса)=Число(Товар.Артикул) Тогда                      // Артикул уже продавался можем изменить цену если нужно
            Если Товар.Цена<>ЦенаДатекса Тогда
                //ТекстВопроса="Внимание - обнаружено изменение цены."+Символы.ПС+
                //"В РРО цена  - "+Формат(ЦенаДатекса,"Ч12.2")+Символы.ПС+
                //"В документе - "+Формат(Товар.Цена,"Ч12.2")+Символы.ПС+ "Изменить цену в РРО ?";
                //Если Вопрос(ТекстВопроса,РежимДиалогаВопрос.ДаНет)=КодВозвратаДиалога.Да Тогда
                Объект.Драйвер.ChangePrice(Число(Товар.Артикул),Товар.Цена,"0000");
                //Иначе    
                //    Предупреждение("Цена не изменилась.Продажа будет по старой цене.");
                //КонецЕсли;
            КонецЕсли;                
        КонецЕсли;
    КонецЕсли;
    Возврат Истина;
КонецФункции


 i 

Правила, п.12
 
andreykyiv@bigmir.net, nickles, Vofka,

RSS Текстовая версия Сейчас: 27.04.24, 11:54
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!