|
Атолл ДТО 10 - можно ли указать уникальный номер чека GUID? | ☑ | ||
---|---|---|---|---|
0
Гений 1С
гуру
29.12.22
✎
21:22
|
Цель: не допустить двойного пробития чека.
По сути я указываю в некий реквизит GUID чека. И если чек пробивается, то повторная попытка пробить такой чек заканчивается неудачей. Потому что если такого нет, то нужно по идее подымать последний пробитый чек, как-то анализировать, это тот же самый чек или нет? |
|||
87
Гений 1С
гуру
09.01.23
✎
13:27
|
(82) а в чем разница? решение простое как два байта переслать.
(83) нет доступа к ФР пока что. (84) познавательно, но я не нашел этого в описании API, можно ли прочитать эти регистры через API атолла? (86) торопишься слишком |
|||
88
PLUT
09.01.23
✎
13:38
|
(87) > познавательно, но я не нашел этого в описании API, можно ли прочитать эти регистры через API атолла?
это всё объясняет. лепите костыли, так вы и денег заработаете и статью напишете на хабр и в 1С кинете камешек |
|||
89
Гений 1С
гуру
09.01.23
✎
13:42
|
(88) 0 бит
|
|||
90
Гений 1С
гуру
09.01.23
✎
13:58
|
(84) окей. там есть информация о последнем чеке.
https://integration.atol.ru/api/#informatsiya-o-poslednem-cheke Для запроса информации о последнем чеке в ФН необходимо вызвать метод fnQueryData() с типом запроса LIBFPTR_PARAM_FN_DATA_TYPE равным LIBFPTR_FNDT_LAST_DOCUMENT. Результатом этого запроса будет следующая информация: Параметр Описание Тип LIBFPTR_PARAM_DOCUMENT_NUMBER Номер документа int LIBFPTR_PARAM_FISCAL_SIGN Фискальный признак документа string LIBFPTR_PARAM_DATE_TIME Дата и время документа datetime Правда, в чеках у клиента (нетленка) ФП не хранится, но все же. Непонятно из документации, является ли Х и Z-отчеты документами. Но по сути я буду смотреть на ФП и если он поменялся (последний) до и после пробития чека, то значит, чек пробит. Окей, можно отойти от подсчета чеков. Достаточно только проверять последний FP до и после пробития чека. |
|||
91
Гений 1С
гуру
09.01.23
✎
13:58
|
но это никак не отменяет того, что добавление GUID в чек упростило бы жизнь отрасли.
|
|||
92
PLUT
09.01.23
✎
14:01
|
(90) > Правда, в чеках у клиента (нетленка) ФП не хранится, но все же.
ну добавьте реквизит чека ФП (нетленка у клиента не треснет от этого). Это правильнее, чем ГУЙ в чек для упрощения жизни в отрасли |
|||
93
Галахад
гуру
09.01.23
✎
14:03
|
Какая-то 0 битная тема.
На поленился глянул требования к разработке от 1С, там есть команда: ПолучитьТекущееСостояние (GetCurrentStatus) В которой есть все. |
|||
94
PLUT
09.01.23
✎
14:07
|
(93) >ПолучитьТекущееСостояние (GetCurrentStatus)
в которой почти ничего нет :) 1С недокрутила, чтобы Г1С страдал там из интересного только "Номер последнего пробитого фискального чека" а ФП у пробитого фискального чека нужно отдельно запрашивать тады для (0) |
|||
95
PLUT
09.01.23
✎
15:12
|
(90) > Достаточно только проверять последний FP до и после пробития чека.
костыль в стиле Г1С. рабочий вариант статью на хабре и в бложике нужно про страдания и 1С недокрутила |
|||
96
PLUT
09.01.23
✎
15:14
|
(95) но еще и хранить нужно ответ (как вариант тупо добавить в нетленку галочку булево "чек точно пробит"), ибо "до и после пробития чека" не запрещает пробить чек еще раз
|
|||
97
PLUT
09.01.23
✎
15:50
|
(90) >окей
длина тормозного пути составила две недели :) см (26), я предлагал ФП у чека получать вместо ГУЯ и хранить в 1С :) |
|||
98
Гений 1С
гуру
09.01.23
✎
15:57
|
(97) попробовал, ФП не выдается атоллом, поэтому использую номер чека. Его можно подставлять как раз в поле "Номер чека ККМ", так что будет еще и практическая польза.
Вот такой код выдает всегда ноль: Объект.setParam(Объект.LIBFPTR_PARAM_DATA_TYPE, Объект.LIBFPTR_FNDT_LAST_DOCUMENT); Объект.queryData(); Значение = Объект.getParamInt(Объект.LIBFPTR_PARAM_FISCAL_SIGN); |
|||
99
Гений 1С
гуру
09.01.23
✎
15:59
|
(95) 1С сделала метод, но сама его не применяет - он сделан в других целях. Поэтому про "не докрутила" формулировочка странная.
Самый надежный способ - передавать GUID чека, тогда не нужно костылей. Ну может лет через 20 индустрия к этому придет. |
|||
100
PLUT
09.01.23
✎
16:01
|
(98) Атол не докрутил значит :)
|
|||
101
PLUT
09.01.23
✎
16:07
|
(98)
попробуй такую загогулину (найди 10 отличий). я загуглил за тебя :) Запрос информации о последнем чеке fptr.setParam(fptr.LIBFPTR_PARAM_FN_DATA_TYPE, fptr.LIBFPTR_FNDT_LAST_RECEIPT); fptr.fnQueryData; где можно получить требуемое значение fiscalSign := fptr.getParamString(fptr.LIBFPTR_PARAM_FISCAL_SIGN); |
|||
102
PLUT
09.01.23
✎
16:08
|
(98) >Вот такой код выдает всегда ноль:
Значение = Объект.getParamInt(Объект.LIBFPTR_PARAM_FISCAL_SIGN); странно, а что getParamInt из строки должен вернуть? null ? |
|||
103
PLUT
09.01.23
✎
16:11
|
вот еще тебе семерочного кода, может пригодится :)
//Заберем номер чека (ФД) из ФН fptr.setParam(fptr.LIBFPTR_PARAM_FN_DATA_TYPE, fptr.LIBFPTR_FNDT_LAST_RECEIPT); fptr.fnQueryData(); НомерЧека = fptr.getParamInt(fptr.LIBFPTR_PARAM_DOCUMENT_NUMBER); //Сформируем ссылку чека для QRКода fptr.setParam(fptr.LIBFPTR_PARAM_FN_DATA_TYPE, fptr.LIBFPTR_FNDT_DOCUMENT_BY_NUMBER); fptr.setParam(fptr.LIBFPTR_PARAM_DOCUMENT_NUMBER, НомерЧека); fptr.fnQueryData(); ДатаВремя = fptr.getParamString(fptr.LIBFPTR_PARAM_DATE_TIME); //дата+время в формате "ГГГГ.ММ.ДД_ЧЧ.ММ.СС" t = Лев(ДатаВремя, 4) + Сред(ДатаВремя,6,2) + Сред(ДатаВремя,9,2) + "T" + Сред(ДатаВремя,12,2) + Сред(ДатаВремя,15,2) + Сред(ДатаВремя,18,2); s = Строка(fptr.getParamDouble(1020)); //сумма по чеку i = Строка(fptr.getParamInt(fptr.LIBFPTR_PARAM_DOCUMENT_NUMBER)); //Номер ФД fp = fptr.getParamString(fptr.LIBFPTR_PARAM_FISCAL_SIGN); //Фискальный признак n = Строка(fptr.getParamInt(1054)); //Признак расчета fptr.setParam(fptr.LIBFPTR_PARAM_FN_DATA_TYPE, fptr.LIBFPTR_FNDT_FN_INFO); fptr.fnQueryData(); fn = fptr.getParamString(fptr.LIBFPTR_PARAM_SERIAL_NUMBER); //номер ФН QRКод = "t="+t+"&s="+s+"&fn="+fn+"&i="+i+"&fp="+fp+"&n="+n; |
|||
104
Гений 1С
гуру
09.01.23
✎
16:16
|
(102) ага, спасибо. ошибку понял. Но в принципе, уже работает с номером чека корректно, ФП все равно не используется в нетленке.
|
|||
105
PLUT
09.01.23
✎
16:19
|
(104) ФП вообще-то полезная вещь при оформлении чеков коррекции
ну всем пофиг. в следующий раз |
|||
106
Гений 1С
гуру
09.01.23
✎
16:41
|
(105) у них нет чеков коррекции. Гггг.. Ну да ладно. Вот код итоговый.
КонтролироватьПробитиеЧекаПрограммой вызываю перед пробитием чека, снятием Х и Z-отчета. Номер там получается не только чека, но и любого нефискального документа, но там в принципе, ничего и не печатается, кроме чеков. Поэтому пока оставлю так, по уму надо переделать на номер последнего фискального документа (для универсального случая).
|
|||
107
Гений 1С
гуру
09.01.23
✎
16:43
|
Статью на хабр с разносом индустрии ККМ сделаю на днях.
|
|||
108
PLUT
09.01.23
✎
16:47
|
(106) костыли
нет чтобы ФП добавить в чек, пришлось огород городить и регистр контроля пробития :) |
|||
109
KJlag
09.01.23
✎
16:48
|
(108) тогда это было бы чужое решение, и тут уже статью не написать
|
|||
110
Гений 1С
гуру
09.01.23
✎
16:49
|
(108) фп насколько уникальный?
|
|||
111
Гений 1С
гуру
09.01.23
✎
16:50
|
(109) Статья не совсем о методе решения проблемы, скорее о ее наличии. А решений проблемы я и не встречал особо.
|
|||
112
PLUT
09.01.23
✎
16:50
|
(107) ваще шедевр!
Если ЗначениеЗаполнено(СтруктураКонтроля.Документ) И //Если есть сохраненная информация по прошлому чеку СтруктураКонтроля.Значение <> Неопределено И//Для чека заполнено значение предыдущего номера чека Значение > СтруктураКонтроля.Значение И//Номер чека стал больше, чем был (на случай перехода через смену) НЕ ЛогикаСервер.ДокументПробит(СтруктураКонтроля.Документ) Тогда //Указываем что документ пробит и ставим ему номер чека ЛогикаСервер.УстановитьДокументПробитИНомерЧекаККМ(СтруктураКонтроля.Документ, Значение); ВызватьИсключение "Попытка пробить уже удаленный документ: " + ДокументСсылка; КонецЕсли; а почему попытка пробить уже удаленный документ? |
|||
113
Гений 1С
гуру
09.01.23
✎
16:51
|
(112) ггг. описка. поправлю, спасибо. "уже пробитый", off course
|
|||
114
PLUT
09.01.23
✎
16:51
|
(110) достаточно уникальный
вот товарищ гугол "Что такое фискальный признак? Фискальный признак — это 10 символов, которые защищают чек от корректирования, а также позволяют проверить, достоверна ли информация в документе. Фискальный признак уникален для каждого чека." |
|||
115
Гений 1С
гуру
09.01.23
✎
16:53
|
(114) ну в пределах смены, в принципе, да, но хз. В типовой, где используется ФП, конечно, я бы использовал ФП, но в нетленке зачем городить.
Все хочу узнать, как эта проблема решается в Магазьке. Сталкивался ли Тиутиу (или как там его) с такой проблемой. |
|||
116
PLUT
09.01.23
✎
16:54
|
(113) вообще ФР умеет и нефискальные документы печатать - ну там рекламу и прочую фигню. твой шедевр это учитывает?
//Номер чека стал больше, чем был (на случай перехода через смену) |
|||
117
Гений 1С
гуру
09.01.23
✎
16:56
|
(116) я об этом писал выше в (106), цитирую себя:
"Номер там получается не только чека, но и любого нефискального документа, но там в принципе, ничего и не печатается, кроме чеков. Поэтому пока оставлю так, по уму надо переделать на номер последнего фискального документа (для универсального случая)." |
|||
118
Гений 1С
гуру
09.01.23
✎
16:57
|
но в этой нетленке только чеки печатает так что норм
|
|||
119
PLUT
09.01.23
✎
16:59
|
(115)
теперь сможешь ответить на вопрос из (110) >фп насколько уникальный? ФП (ФПД) — фискальный признак документа (чека). Это не номер, а уникальный идентификатор, который формируется фискальным накопителем (ФН) с помощью шифровального ключа при расчете с покупателем и передается ОФД. Представляет собой последовательность из 10 цифр и генерируется для контроля подлинности фискальных данных. ФПД создается на основе порядкового номера фискального документа (ФД) и сведений, введенных при регистрации кассового аппарата: ИНН компании или предпринимателя; даты и времени регистрации контрольно-кассовой техники (ККТ); регистрационного номера ККТ; фабричного номера ККТ; ИНН оператора фискальных данных. При этом следует понимать, что все эти данные в любом ФПД так или иначе зашифрованы. То есть даже имея номера ФД и ФН, самостоятельно «вычислить» десятисимвольную последовательность, сформированную средствами криптографического шифрования, невозможно. |
|||
120
PLUT
09.01.23
✎
17:00
|
(117) > Поэтому пока оставлю так, по уму надо переделать
это не про тебя :) где ум и где ты |
|||
121
Гений 1С
гуру
09.01.23
✎
17:01
|
(119) тут не написано "не номер, а уникальный идентификатор", но смущает, что всего 10 десятичных цифр, в отличии от GUID, видимо, уникальность не совсем уникальная.
(120) В рамках данной задачи и бюджета решение норм. |
|||
122
PLUT
09.01.23
✎
17:04
|
(121) это типа "хэша" для защиты от подделки инфы. в рамках твоей задачи для защиты от повторного пробития чека более чем достаточно уникальный (как и GUID, которого нет и в результате костылестроение)
|
|||
123
Гений 1С
гуру
09.01.23
✎
17:06
|
(122) GUID я предлагаю применять не после пробития чека, а до его пробития, надеюсь, разница зачем, понятна?
|
|||
124
PLUT
09.01.23
✎
17:09
|
(123) а что не применяешь GUID? накостылил в итоге - и так сойдёт!
надеюсь понятно, что правильно использовать ФП из ФР и хранить в 1С в реквизите чека, т.к. ФП может на "вырост" пригодиться для заполнения тегов по развратам и чекам коррекции ну и в качестве ГУЯ более чем подходит для контроля "уникальности" в пределах открытой кассовой смены и защиты от дурачков на кассе |
|||
125
PLUT
09.01.23
✎
17:10
|
(124) >ФП (ФПД) — фискальный признак документа (чека). Это не номер, а уникальный идентификатор, который формируется фискальным накопителем (ФН) с помощью шифровального ключа
по сути гуй, но обрезанный :) до 10 цифр |
|||
126
Гений 1С
гуру
09.01.23
✎
17:29
|
(124) Я предлагаю использовать ГУИД по другой схеме. Атолл ее не поддерживает, алло.
|
|||
127
Гений 1С
гуру
09.01.23
✎
17:29
|
Еще раз - я предлагаю передавать ГУИД чека в параметрах чека. Тогда дважды его пробить не получится однозначно.
|
|||
128
Галахад
гуру
09.01.23
✎
17:31
|
Теперь понятно, почему 1С-ников на хабре подвергают остракизму.
|
|||
129
PLUT
09.01.23
✎
17:54
|
(127) куда передавать? в ФР? ему то зачем? он сам гуиды генерит - ФПД (фискальный признак документа) :) ешь что дают
|
|||
130
AAA
09.01.23
✎
18:08
|
Весь мир в ожидании прорыва индустрии ) Что будет через 20 лет никто вообще не знает)
У Атола кстати можно запросить информацию по номеру чека. В 1С вычислить ожидаемый номер чека и запросит по нему информацию Удивительно правда, что миллионы касс работают и не знают о нашей вселенской проблеме. И даже не знают что такое ГУИД. А есть еще и другие программы, кроме 1С, есть и на 1С 7.7, есть и автономные кассы, которые ничего не слышали про ГУИД |
|||
131
AAA
09.01.23
✎
18:20
|
А чем автору поможет ФПД? Послали чек на пробитие, он пробился, а ответ не пришел. И опять та же самая шняга, можем повторно пробить ) Или я уже потерял нить рассуждений ?
|
|||
132
PLUT
09.01.23
✎
18:56
|
(131) да, потерял. начни с (84) и далее по тексту
|
|||
133
Гений 1С
гуру
09.01.23
✎
18:56
|
(129) на 129 вопросе нкоторые до сих пор еще не поняли, что передавать GUID будет 1С в ФР для защиты от дублирования. Если ФР уже пробивал в этой смене (а лучше на этой неделе) такой GUID, он ругнется и не даст пробить.
Тут есть единственный недостаток, если забудут пробить этот чек, он так и останется не пробитым, может даже в отложенных лежать. |
|||
134
PLUT
09.01.23
✎
19:00
|
(133) это влажные мечты.
>Если ФР уже пробивал в этой смене (а лучше на этой неделе) такой GUID, он ругнется и не даст пробить. ФР где-то у себя должен хранить гуиды и искать у себя в фискальном накопителе гуиды? так чтоли? :) |
|||
135
PLUT
09.01.23
✎
19:01
|
(134) это к законодателям нужно, чтобы они в законе поправили эту дичь с гуями и тогда все производители ФН и ФР возьмут под козырёк и отрасль вздохнет спокойно
|
|||
136
PLUT
09.01.23
✎
19:03
|
(133) >Тут есть единственный недостаток, если забудут пробить этот чек, он так и останется не пробитым, может даже в отложенных лежать
в отложенных в 1С чтоли? ФР вроде бы не умеет откладывать у себя :) |
|||
137
Гений 1С
гуру
09.01.23
✎
19:19
|
(134) а в чем проблема в течении смены хранить гуй?
|
|||
138
Гений 1С
гуру
09.01.23
✎
19:21
|
думаю, наиболее логичный путь - это чтобы перед любой фискальной операцией с ФР должен проверяться статус документов в 1С и если есть документ, у которого статус не завершен, то надо его завершить - обратиться к кассе и уточнить состояние. Нормальных способов уточнить состояние нет, только костыльные. GUID был бы неплохим выходом. Уж GUID чеков за текущую смену 1С могла бы хранить.
|
|||
139
AAA
09.01.23
✎
19:33
|
Пролистал с (84). Привязка к последнему пробитому чеку не снимает всех проблем, например при одной кассе на несколько компов. Правда 1С усиленно сопротивляется такому режиму работы. А с маркировкой там вообще все еще сложнее. Поэтому, на мой взгляд, промышленное решение здесь вряд ли возможно.
(138)Фискальный регистратор вообще никак не обязан знать, что такое 1с ) А ты хочешь ФР заставить проверять статус документа 1С ) |
|||
140
PLUT
09.01.23
✎
19:41
|
(138) гуиды и статусы чеков в 1с у тебя уже есть.
Зачем ФРу гуид отправлять? Что ФР с ним делать будет, хранить его где? В фискальном накопителе? А "гуид" фискального документа есть. Это ФПД и ФР при пробитии его возвращает. И есть способы запросить ФПД у последнего пробитого и даже по номеру чека/смены из фискальной памяти |
|||
141
PLUT
09.01.23
✎
19:42
|
(139) у него уже все сделано в самописьной нетленке у клеента
Ждём теперь разгромную статью. Г1С обещал |
|||
142
Гений 1С
гуру
09.01.23
✎
19:50
|
(141) т.к. у меня низкая карма на хабре, могу печатать статью раз в неделю. Пока напишу ее у себя на гении, ок.
|
|||
143
Гений 1С
гуру
09.01.23
✎
19:50
|
(139) (140) промышленное решение - это в случае не завершенности транзакции проверять ее состояние. Но это для программистов с прямыми руками, а не для фирмы 1С.
|
|||
144
PLUT
09.01.23
✎
19:54
|
(143) гуид зачем отправлять в принтер чеков? Ты не ответил
|
|||
145
НафНаф
09.01.23
✎
19:58
|
(142) думаю с выходом статьи она не повысится
|
|||
146
Гений 1С
гуру
09.01.23
✎
20:09
|
(144) еще раз - чтобы ФР ответил, что такой GUID уже пробит и не дал задублировать чек.
|
|||
147
Гений 1С
гуру
09.01.23
✎
20:09
|
(145) отнюдь. Моя недавняя статья про учет доходов фрилансера очень даже повысила карму с -9 до -5.
|
|||
148
PLUT
09.01.23
✎
20:43
|
(146) чтобы ФР ответил, он должен уметь это делать. Нужно начать с (135). Атол докрутит, если его свыше обяжут. Пришивкой новой или базу данных к драйверу сбоку прикрутят.... Это детали
А пока ты с таким же успехом можешь спросить у офисного МФУ. Вряд-ли факс или принтер ответит. ФР такой же по сути принтер, только с функций передачи фискальных данных в налоговую |
|||
149
НафНаф
09.01.23
✎
20:53
|
(147) это потому что она никому не нужной оказалась. Четыре комментария, из них два твои ответы.
|
|||
150
Irbis
10.01.23
✎
07:43
|
(100) ХЗ что там Атол не докрутил, но на запрос статуса чека я получаю даже JSON фискального документа со всеми признаками ФН, ФД и ФП
ЗапросHTTP=Новый HTTPЗапрос("/possystem/v4/"+СокрЛП(Идентификаторы.ГруппаККМ.ИмяГруппы)+"/report/"+Идентификаторы.ИдентификаторАтол+"?token="+Токен.token); |
|||
151
Гений 1С
гуру
10.01.23
✎
08:02
|
(148) это показатель кризиса IT, когда в эксплуатацию запускают системы, не обеспечивающие целостность транзакции.
(149) Мы говорили о карме, карму она мне подняла. (150) Чек не всегда сразу может уйти в ОФД, особенно если сбоит интернет, садись, два. |
|||
152
AAA
10.01.23
✎
08:32
|
(151)Система, в которой которой есть элемент в рулоном ленты в принципе не может на 100% обеспечит целостность транзакции, либо цена вопроса будет очень высока.
Кто будет платить за это. За малозначительную проблему. Чеки из 1С бьют уже несколько десятилетий и никто особенно не страдает Представляю себе кассу, получает запрос от 1С, сама отправляет обратно подтверждение и только потом вылазит бумажный чек. Или еще смешнее, чек сначала вылазит, но если 1С не получила подтверждение, то чек уничтожается специальным роботом и сторнируется в ФН. Тут уж у кого какая фантазия Было правильно сказано, что ККТ это принтер с ФН. Это цена вопроса учета оборота наличных денег и эквайринга. Задача решается. Есть малозначительные издержки. Решения, спасающего отрасль никто не услышал. Хотя и не фанат ни 1С, ни Атолла. И в жизни есть не только 1С и Атол, хотя это и самая большая часть отрасли |
|||
153
Гений 1С
гуру
10.01.23
✎
09:47
|
(152) я не вижу проблемы зафиксировать транзакцию в данном случае. о какой дорогой цене вопроса идет речь?
даже принтер, если бумага зажевана, выдает изменение статуса. Решение есть, перекури тему. вкратце - перед обращением к фискальному принтеру сначала проверить есть ли незавершенные транзакции и проверить их статус. |
|||
154
Irbis
10.01.23
✎
09:49
|
(151) Двоечник как раз ты, что мешает запрос при определённых вариантах ответа повторить. Так-то я количество чеков на десятки и сотни тысяч в сутки меряю.
|
|||
155
AAA
10.01.23
✎
09:57
|
(153)Мы видимо про разные транзакции говорим. Если Вы печатаете чек с помощью драйвера в обычном режиме (не WEB), то Вы и не пробьете новый чек, если не пробит предыдущий. Новый чек просто не откроется, пока предыдущий не закрыт. И про какие незавершенные транзакции спрашивать кассу? Можете спрашивать, можете не спрашивать, что изменится?
|
|||
156
AAA
10.01.23
✎
10:01
|
(153)Сформулируйте четко, кто, что и как мог бы доделать, чтобы было идеально, чтобы устранить кризис в отрасли А так обсуждаем абстракцию
|
|||
157
НафНаф
10.01.23
✎
11:54
|
Вот чувствую, что чеки не регистрируются в 1С у них на регулярной основе, раз решили сделать такую доработку. Только вот стоило бы причину устранять, а не решать проблему космического масштаба.
|
|||
158
AAA
10.01.23
✎
12:01
|
(157)ну автор не озвучил конфигурацию) но видимо этот блок взят из критикуемой отрасли, хотя как взят это вопрос
|
|||
159
Гений 1С
гуру
10.01.23
✎
12:09
|
(157) и в чем же на ваш взгляд, может быть причина?
(155) перечитайте тему (158) нетленка, читайте внимательно. |
|||
160
Гений 1С
гуру
10.01.23
✎
12:10
|
(158) но на типовых у меня такая же ситуация периодически на Рознице встречается - 1-2 случая в месяц на сетих из 3х точек в облаке.
|
|||
161
AAA
10.01.23
✎
12:32
|
перечитал уже ) кроме GUID послать что то не нашел? Послать - это намерение. а не решение. Опишите полное решение.
|
|||
162
НафНаф
10.01.23
✎
13:23
|
(159) я нетленку не видел, в коде скорее всего, может и с сетью проблема если RDP, но больше шансов - криворукий код
|
|||
163
НафНаф
10.01.23
✎
13:24
|
(160) ну хз, начиная с УТ 10.4 и по 11.5 ни разу такого не было за более 10 лет
|
|||
164
PLUT
10.01.23
✎
14:03
|
(163) у меня за 6 лет работы с розницей и УТ было несколько раз, что надо было через тест драйвера - "продолжить печать" (когда рулон закончился)
и пару раз через тест драйвера - аннулировать чек (ну т.е. какой-то сбой и чек не закрыт и при попытке печати чека из 1С ашипка ФР). банально - нет связи с ККМ/ выключить/включить, питание, шнуры проверить - кассиры обычно сами справлялись. а так, чтобы как у Г1С - "не допустить двойного пробития чека" - не было :) походу нетленка криво написана |
|||
165
Гений 1С
гуру
10.01.23
✎
16:22
|
(164) и в чем же ее кривизна?
|
|||
166
Гений 1С
гуру
10.01.23
✎
16:22
|
(162) 0 бит. Гипотезы ни о чем.
|
|||
167
Гений 1С
гуру
10.01.23
✎
16:22
|
Было - не было - это смешно. Если завершение распределенной транзакции не контролируется, то будет неизбежно
|
|||
168
НафНаф
10.01.23
✎
16:30
|
(165) (166) (167) такой ты манипулятор, где твои "из пушки по воробьям", "клиент не потянет бюджет"?
|
|||
169
Гений 1С
гуру
10.01.23
✎
16:32
|
(168) ты о чем?
|
|||
170
НафНаф
10.01.23
✎
16:54
|
(169) и затем включить режим тупого, ну какой ты предсказуемый стал
|
|||
171
PLUT
10.01.23
✎
17:04
|
(165) кривизна нетленки в том, что нетленка не контролирует завершение распределенной транзакции.
ну с помощью твоих костылей теперь будет контроль, но это неточно :) |
|||
172
PLUT
10.01.23
✎
17:33
|
(166) проблема в коде 146%
|
|||
173
PLUT
10.01.23
✎
17:44
|
(166) > Цель: не допустить двойного пробития чека.
лучше напиши, как часто и почему вы чеки по два раза пробиваете. это ли не кривизна нетленки? |
|||
174
Kassern
10.01.23
✎
17:49
|
(173) В УТ11 вроде можно дубль чека сделать. Видел не так давно такой пример. Там ситуация следующая: пробили чек на основании ПКО, а потом это документ пометили на удаление, создали новый ПКО и пробили еще один чек. В итоге в ОФД ушло 2 чека по одной отгрузке. Других дублей я не припомню)
|
|||
175
Гений 1С
гуру
10.01.23
✎
18:03
|
(172) а как ты это понял? Поплевал на палец и посмотрел, куда дует ветер? ггг
(174) мы про другие дубли |
|||
176
magicSan
10.01.23
✎
18:28
|
(80) чек не вышел = чек не пробит. В реальность вернись уже.
|
|||
177
magicSan
10.01.23
✎
18:31
|
(80) не знаю какое по ты там юзаешь но с драйвером атола однозначно понятно что там с чеков. 20-30 касс по 3-5 пользователей, в пики все пять отправляют задания на кассу, всё организовано через очереди ни одного косяка за 2 года.
|
|||
178
Гений 1С
гуру
10.01.23
✎
19:37
|
(177) Отлично. А теперь расскажи за счет чего это происходит. Если касса не успевает сообщить 1С, что чек пробит, как это лечится. Поставь точку останова и прерви сам. Расскажи, как 1С это пролечит. Внемлю.
|
|||
179
AAA
10.01.23
✎
20:07
|
Мы напрасно спорим. Если человек говорит, что есть проблема, значит у него она есть. Если другие люди говорят, что нет проблемы, значит у них ее нет. Первый решает эту проблему, остальные не решают, так как нет проблемы. В конце концов кто-то должен делать историю. Может через некоторое время придумают кассы с внешними гуид. А может завтра и касс не станет, чеки сразу из компа или банковского терминала будут лететь в ОФД и электронный чек покупателю в Госуслуги. А может и вовсе деньги отменят. Если не деньги, то может товары отменят. Но кто-то должен делать движуху, и большую и маленькую)) Так что пусть человек решает. Может с нами поделится решением. Смущает, что долгоm тут вроде работы совсем немного ) Но это неважно
|
|||
180
Kassern
11.01.23
✎
10:02
|
(178) "Если касса не успевает сообщить 1С, что чек пробит, как это лечится. Поставь точку останова и прерви сам" - я так понимаю, что в этом случае чек пробьется в кассе и уйдет в ОФД, а в 1с не будет строчки в регистре фискальных операций (в крайнем случае). Вы хотите узнать, как эту строчку программно добавить, чтобы решить вопрос?
|
|||
181
PLUT
11.01.23
✎
10:08
|
(180) > Если касса не успевает сообщить 1С, что чек пробит, как это лечится. Поставь точку останова и прерви сам
зачем такие сложности - точка останова/прерви сам. достаточно в момент пробития сервер 1С или где у вас база крутится - вырубить питание с кнопки |
|||
182
AAA
11.01.23
✎
10:56
|
(180)других проблеи автор не озвучил. Ведь чеки все - вот они, или вылез или нет Ну вылез после замены ленты, надо проставить в 1 номер пробитого чека. Как проставить - зависит от конфигурации
|
|||
183
PLUT
11.01.23
✎
11:03
|
(182) чеки вообще могут не вылезать из ФР (если тырнет-магаз или ж0ская экономия термобумаги)
я уже у Г1С (173) спрашивал про его грусть пичаль и страдания - как часто его и клеента беспокоят дубли чеков и почему так часто. он не ответил :) 1С г.вно, нетленка теперь лучше, т.к. обеспечивает с помощью костылей "контроль целостности распределенной транзакции" |
|||
184
PLUT
11.01.23
✎
11:04
|
(183) контролируется "завершение распределенной транзакции" *
|
|||
185
PLUT
11.01.23
✎
11:10
|
(182) кассир сам в состоянии себя и кассу проверить с помощью х-отчетов из ФР и эквайринга и по отчету 1С. и уже принять осмысленное решение - ибашить дубль чека или нет. если не в состоянии принять такое решение - попросить помощь более разумного существа
1С вполне себе сообщает об ашипках торгового оборудования. ну можно заморочиться еще более подробные ашипки логировать чтобы ФР часто не успевал сообщать 1С, что чек пробился... что-то не так в консерватории, кривизна нетленки однозначно :) |
|||
186
AAA
11.01.23
✎
11:17
|
(185)так я то разве спорю )
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |