IPB

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

 
Добавить ответ в эту темуОткрыть тему
Признак Агент в чеке. Тег 1222. ФФД1.05, Ошибка реквизита: Недопустимое сочетание реквизитов!
fazyloff
сообщение 8.10.2018, 18:32
Сообщение #1


Прохожий


Группа: Пользователи
Сообщений: 27
Регистрация: 30.11.2009
Пользователь №: 19 203



Добрый день!
Пытаемся зарегистрировать позицию в чеке, код такой:
ECR.BeginItem();
ECR.AttrNumber(1222); //признак Агента
// 6
// Осуществление расчета с покупателем (клиентом) пользователем, являющимся агентом и не являющимся банковским платежным агентом (субагентом), платежным агентом (субагентом), поверенным, комиссионером
// "АГЕНТ"
ECR.AttrValue(6);
if(ECR.WriteAttribute() != 0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}
ECR.AttrNumber(1226); //ИНН Комиссионера
ECR.AttrValue(_AgentVendTable.INN_RU);
if(ECR.WriteAttribute() != 0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}
ECR.AttrNumber(1224);
ECR.BeginComplexAttribute();
ECR.AttrNumber(1171);
ECR.AttrValue(_agentvendTable.Phone); //Номер телефона Организации по агентскому договору
if(ECR.WriteAttribute() != 0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}
ECR.AttrNumber(1225);
ECR.AttrValue(_agentvendTable.NameAlias); //Наименование Организации по агентскому договору
if(ECR.WriteAttribute() != 0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}
ECR.EndComplexAttribute();
Падает на установке атрибута 1222 с ошибкой "Ошибка реквизита: Недопустимое сочетание реквизитов!".

В ФФД не очень понятно, что передавать в этот тег. Написано, шестой бит - признак АГЕНТ. Т.е. нужно передавать 100000 в двоичной системе, 64?
В примерах, что нашел, написано 1(номер бита 5) для КОМИССИОНЕР.

Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
АТОЛ: Грибанов А...
сообщение 8.10.2018, 18:37
Сообщение #2


Ваще опытный!
********

Группа: Тех. поддержка
Сообщений: 4 452
Регистрация: 9.11.2017
Пользователь №: 153 658



Цитата(fazyloff @ 8.10.2018, 18:32) *
Добрый день!
Пытаемся зарегистрировать позицию в чеке, код такой:
ECR.BeginItem();
ECR.AttrNumber(1222); //признак Агента
// 6
// Осуществление расчета с покупателем (клиентом) пользователем, являющимся агентом и не являющимся банковским платежным агентом (субагентом), платежным агентом (субагентом), поверенным, комиссионером
// "АГЕНТ"
ECR.AttrValue(6);
if(ECR.WriteAttribute() != 0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}
ECR.AttrNumber(1226); //ИНН Комиссионера
ECR.AttrValue(_AgentVendTable.INN_RU);
if(ECR.WriteAttribute() != 0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}
ECR.AttrNumber(1224);
ECR.BeginComplexAttribute();
ECR.AttrNumber(1171);
ECR.AttrValue(_agentvendTable.Phone); //Номер телефона Организации по агентскому договору
if(ECR.WriteAttribute() != 0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}
ECR.AttrNumber(1225);
ECR.AttrValue(_agentvendTable.NameAlias); //Наименование Организации по агентскому договору
if(ECR.WriteAttribute() != 0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}
ECR.EndComplexAttribute();
Падает на установке атрибута 1222 с ошибкой "Ошибка реквизита: Недопустимое сочетание реквизитов!".

В ФФД не очень понятно, что передавать в этот тег. Написано, шестой бит - признак АГЕНТ. Т.е. нужно передавать 100000 в двоичной системе, 64?
В примерах, что нашел, написано 1(номер бита 5) для КОМИССИОНЕР.


/ Указание признака агента:
// // Банковскй платежный агент - 1
// // Банковскй платежный субагент - 2
// // Платежный агент - 4
// // Платежный субагент - 8
// // Проверенный агент - 16
// // Комиссионер - 32
// // Иной агент - 64

и еще касса зарегана с признаком комиссионер? какое значение у атрибута 1057?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
fazyloff
сообщение 8.10.2018, 18:46
Сообщение #3


Прохожий


Группа: Пользователи
Сообщений: 27
Регистрация: 30.11.2009
Пользователь №: 19 203



Цитата(АТОЛ: Грибанов Алексей @ 8.10.2018, 20:37) *
/ Указание признака агента:
// // Банковскй платежный агент - 1
// // Банковскй платежный субагент - 2
// // Платежный агент - 4
// // Платежный субагент - 8
// // Проверенный агент - 16
// // Комиссионер - 32
// // Иной агент - 64

и еще касса зарегана с признаком комиссионер? какое значение у атрибута 1057?

Спасибо!
Касса зарегана с признаком Комиссионер, при регистрации ставили галку АГЕНТ.
Как можно посмотреть значение этого атрибута после регистрации?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
АТОЛ: Грибанов А...
сообщение 8.10.2018, 18:55
Сообщение #4


Ваще опытный!
********

Группа: Тех. поддержка
Сообщений: 4 452
Регистрация: 9.11.2017
Пользователь №: 153 658



Цитата(fazyloff @ 8.10.2018, 18:46) *
Спасибо!
Касса зарегана с признаком Комиссионер, при регистрации ставили галку АГЕНТ.
Как можно посмотреть значение этого атрибута после регистрации?

например так

или так
Прикрепленные файлы
Прикрепленный файл  ___________.JPG ( 77.29 килобайт ) Кол-во скачиваний: 16
Прикрепленный файл  ___________1.JPG ( 131.99 килобайт ) Кол-во скачиваний: 16
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
fazyloff
сообщение 9.10.2018, 10:44
Сообщение #5


Прохожий


Группа: Пользователи
Сообщений: 27
Регистрация: 30.11.2009
Пользователь №: 19 203



Цитата(АТОЛ: Грибанов Алексей @ 8.10.2018, 20:55) *
например так

или так

Стоит 64.
Прикрепленный файл  2018_10_09_12_40_25.png ( 10.63 килобайт ) Кол-во скачиваний: 7


Изменил значение атрибута на 64, все проходит успешно до метода EndItem()
Он дает ошибку

Неверная последовательность команд
Состояние драйвера "ComplexAttr" не соответствует допустимому состоянию "Free, DocumentFisc"!


С чем это может быть связано?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
АТОЛ: Царюков Ро...
сообщение 9.10.2018, 10:46
Сообщение #6


Тех.поддержка
********

Группа: Администраторы
Сообщений: 41 953
Регистрация: 25.9.2008
Из: Москва
Пользователь №: 14 717



неверная последовательность команд....

лог показывайте

версию прошивки также уточните


--------------------

ответы на 90% вопросов находятся в ДОКУМЕНТАЦИИ
еще 9% ответов ТУТ
P.S.: уважайте труд наших писателей - читайте мануалы
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
fazyloff
сообщение 10.10.2018, 9:13
Сообщение #7


Прохожий


Группа: Пользователи
Сообщений: 27
Регистрация: 30.11.2009
Пользователь №: 19 203



Цитата(АТОЛ: Царюков Роман @ 9.10.2018, 12:46) *
лог показывайте


Спасибо, посмотрел лог сам, 1174 заполнялся пустым значением, а ошибка записи комплексного атрибута не обрабатывалась.
Исправили, чек сформировался.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
fazyloff
сообщение 11.10.2018, 16:20
Сообщение #8


Прохожий


Группа: Пользователи
Сообщений: 27
Регистрация: 30.11.2009
Пользователь №: 19 203



Цитата(fazyloff @ 10.10.2018, 11:13) *
чек сформировался.


Чек сформировался, да не тот, что ожидалось. Прикрепленный файл  2018_10_11_18_13_01.png ( 45.85 килобайт ) Кол-во скачиваний: 9


Прикладываю лог.
Прикрепленный файл  kkmlog.txt ( 3.98 килобайт ) Кол-во скачиваний: 1


Вопрос - почему цена = 0, и откуда взялась скидка на всю сумму? Может, цену и сумму нужно так же через WriteAttribute установить?
Код такой:
ECR.BeginItem();
ECR.AttrNumber(1214); //Признак способа расчета - полный расчет 4
ECR.AttrValue(4);
if(ECR.WriteAttribute() != 0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}
ECR.ItemType(4); //Признак предмета расчета Услуга
ECR.AttrNumber(1222); //признак Агента
// 6ой бит = 1, итого 64.
// Осуществление расчета с покупателем (клиентом) пользователем, являющимся агентом и не являющимся банковским платежным агентом (субагентом), платежным агентом (субагентом),
// "АГЕНТ"
ECR.AttrValue(64);
if(ECR.WriteAttribute() != 0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}
ECR.AttrNumber(1226); //ИНН Комиссионера
ECR.AttrValue(substr(_AgentVendTable.INN_RU+' ',1, 12));
if(ECR.WriteAttribute() != 0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}
/* ECR.AttrNumber(1224); //ИНН Комиссионера
if(ECR.WriteAttribute() != 0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}*/
ECR.AttrNumber(1224);
ECR.BeginComplexAttribute();
if (Phone)
{
ECR.AttrNumber(1171);
ECR.AttrValue(Phone); //Номер телефона Организации по агентскому договору
if(ECR.WriteAttribute() != 0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}
}
ECR.AttrNumber(1225);
ECR.AttrValue(_agentvendTable.NameAlias); //Наименование Организации по агентскому договору
if(ECR.WriteAttribute() != 0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}
If(ECR.EndComplexAttribute() !=0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}
ECR.Name(_name);
ECR.Quantity(_qty);
ECR.Price(_lineAmount);
ECR.TaxTypeNumber(_taxTypeNumber);
ECR.AttrPrint(1);

if(ECR.EndItem() != 0)
{
errorText = StrFmt("Ошибка ККМ: %1!", ECR.ResultDescription());
return false;
}
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
АТОЛ: Царюков Ро...
сообщение 11.10.2018, 16:42
Сообщение #9


Тех.поддержка
********

Группа: Администраторы
Сообщений: 41 953
Регистрация: 25.9.2008
Из: Москва
Пользователь №: 14 717



выкладывайте полный лог


--------------------

ответы на 90% вопросов находятся в ДОКУМЕНТАЦИИ
еще 9% ответов ТУТ
P.S.: уважайте труд наших писателей - читайте мануалы
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
fazyloff
сообщение 11.10.2018, 19:38
Сообщение #10


Прохожий


Группа: Пользователи
Сообщений: 27
Регистрация: 30.11.2009
Пользователь №: 19 203



Полный лог 11Мб,
Вырезал именно этот чек. с НАчинаем запись в лог до Завершаем запись в логПрикрепленный файл  kkmlog2.txt ( 25.09 килобайт ) Кол-во скачиваний: 0


Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ДимкаМ
сообщение 11.10.2018, 21:24
Сообщение #11


NedoPC
******

Группа: Пользователи
Сообщений: 1 425
Регистрация: 6.3.2017
Пользователь №: 135 925



Сумму не записали, вот и ноль.

ECR.Name(_name);
ECR.Quantity(_qty);
ECR.Price(_lineAmount);
ECR.Summ(_lineAmount * _qty);
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

Добавить ответ в эту темуОткрыть тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 24.10.2018, 0:49
 Яндекс цитирования  Rambler's Top100