Вход | Регистрация
 

Вывод дополнительной информации на чеке Атол30Ф

Вывод дополнительной информации на чеке Атол30Ф
Я
   zenon46
 
13.07.18 - 09:13
Доброго дня! Попытался на чеке вывести дополнительную информацию, ничего не вышло, мало того в ФИО кассира - раньше передавалось "Кассир", а после "допипливания" ККМ, стало выводить СИСТ.АДМИНИСТРАТОР, хотя в коде по кассиру ничего не менялось. Ниже код :

        Объект.ValuePurpose = 56;
        Объект.Value = 3;
        Объект.SetValue();
        
        Объект.AttrValue = Кассир;
        Объект.AttrNumber = 1021;
        Объект.WriteAttribute();
        
        Объект.AttrValue = ПУП;
        Объект.AttrNumber = 1055;
        Объект.WriteAttribute();
        
        Объект.Password = Пароль;
        
        // входим в режим регистрации
        Объект.Mode = 1;
        Если Объект.SetMode() <> 0 тогда
            ОписаниеРезультата = Объект.ResultDescription;
            Возврат Рез;
        КонецЕсли;
        
        Если Скидка > 0  Тогда
            Объект.Percents = Скидка;
            Объект.Destination = 0;
            Если Объект.PercentsDiscount() <> 0 тогда
                ОписаниеРезультата = Объект.ResultDescription;
                 Возврат Рез;
            КонецЕсли;
         ИначеЕсли Скидка < 0  Тогда
            Объект.Percents = (-1) * Скидка;
            Объект.Destination = 0;
            Если Объект.PercentsCharge() <> 0 тогда
                ОписаниеРезультата = Объект.ResultDescription;
                 Возврат Рез;
            КонецЕсли;              
        КонецЕсли;
        // продажа без сдачи
        
        СписокТоваров.ВыбратьСтроки();
        
        Пока СписокТоваров.ПолучитьСтроку() = 1 Цикл
            
            Объект.Name     = СписокТоваров.ТовНаим;
            Объект.Price    = СписокТоваров.Цена;
            Объект.Quantity = СписокТоваров.Количество;
            //Объект.Amount   = СписокТоваров.Сумма;
        
            Если СписокТоваров.СтавкаНДС = "none" Тогда
                Объект.TaxTypeNumber = 4;
            ИначеЕсли СписокТоваров.СтавкаНДС = "18" Тогда
                Объект.TaxTypeNumber = 3;
            ИначеЕсли СписокТоваров.СтавкаНДС = "10" Тогда
                Объект.TaxTypeNumber = 2;
            ИначеЕсли СписокТоваров.СтавкаНДС = "0" Тогда
                Объект.TaxTypeNumber = 1;        
            КонецЕсли;
            
            Если ПризнВозврата = 0 Тогда
                Если Объект.Registration() <> 0 тогда
                    ОписаниеРезультата = Объект.ResultDescription;
                    Возврат Рез;
                КонецЕсли;
            Иначе    
                Если Объект.Return() <> 0 тогда
                    ОписаниеРезультата = Объект.ResultDescription;
                     Возврат Рез;
                КонецЕсли;
            КонецЕсли;
            
        КонецЦикла;
        
        //Объект.Summ = СуммаЧека;        
        //Объект.TypeClose = 0;
        //
        //Если Объект.Delivery() <> 0 тогда
        //    ОписаниеРезультата = Объект.ResultDescription;
         //    Возврат Рез;
        //КонецЕсли;
        
        Если ТипОплаты = 0 Тогда        
            Объект.TypeClose = 0;
        ИначеЕсли ТипОплаты = 1 Тогда
            Объект.TypeClose = 1;
        КонецЕсли;
        
        //Выведем номер документа оригинала отдельной строкой в чеке
        Если ПустоеЗначение(НомерДокаОснования) = 0 Тогда
            Объект.Caption = "Документ № "+НомерДокаОснования+".";
            Объект.PrintString();
        КонецЕсли;

Добавлены были последние 4 строки. Что не так ?
 
 
   oslokot
 
1 - 13.07.18 - 09:15
Вы напрямую работаете с драйвером? 
Атрибут кассира это же "CashierName"
   Галахад
 
2 - 13.07.18 - 09:16
Что за метод "ПустоеЗначение"?
   ildary
 
3 - 13.07.18 - 09:31
(2) это 7.7 :)
   Builder
 
4 - 13.07.18 - 09:49
Число по логике - сначала надо указать номер атрибута, а потом записать в него значение.
Объект.AttrNumber = 1021;
Объект.AttrValue = Кассир;
   ildary
 
5 - 13.07.18 - 09:54
(0) есть небольшой хак - можно при закрытии смены передавать не пароль сис.администратора - "30", а просто администратора - "29", при этом в драйвере атола заменить имя администратора на имя кассира и вписать его ИНН. Но у меня в этом случае все равно при печати первого чека теряется ИНН кассира (что-то не так в открытии смены).
   ildary
 
6 - 13.07.18 - 09:55
Почему не изменить сис.администратора - потому что в драйвере атола 8.16 у сис.администратора можно сменить имя, но нельзя вписать ему ИНН (для ФФД 1.05)
   dezss
 
7 - 13.07.18 - 10:05
при использовании новых дров и компонент, все гут...
добавляют текстовую строку в xml и ккт сама ее печатает...
   zenon46
 
8 - 13.07.18 - 10:52
Блин ребзя, ну никто не сказал по делу ничего, речь идет о последних 4-х строках, когда я хочу на чек просто вывести дополнительную нефискализированную информацию.
(2) вот и выросло поколение которое 7.7 не видело )
   Галахад
 
9 - 13.07.18 - 11:12
(8) :-)
А если кусок кода вставить до фискализации строк?
   zenon46
 
10 - 13.07.18 - 12:13
(9) сработало, вывелось правда в начале чека, я думал это выводить где-нить в конце.
 
 Рекламное место пустует

Список тем форума
Рекламное место пустует  Рекламное место пустует
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует