Приобрести программные продукты, оборудование и литературу вы можете в Интернет-магазине.
{{userFullName}}
Личный кабинетВыйти
Вход в личный кабинет
Для получения доступа к форуму необходимо
авторизоваться
или
зарегистрироваться
на сайте.
{{ formTitle ? formTitle : 'Заказ обратного звонка' }}
{{ formDescription }}
При использовании ДТО8 чеки автоматически отправлялись в нужный ФР (делал доработку, которая подставляет нужный ФР и документ "Чек на оплату" и в Фронт кассира пр оплате через фронт менеджера по кнопке "Оплата" через связь ПодразделениеКомпании->КассаККМ-ФР). При использовании ДТО10 эта доработка уже не работает, хотя нужный ФР передается и в Чек на оплату, и в фронт менеджера - чек всегда выходит на последнем включенном ФР, независимо от того, на терминальном сервере пробивать, или на самом компьютера кассира
а выбор его идентификатора GUID_ФР..
может это поможет..
Не помогло.
Даже на самом простейшем сценарии - снятии Х-отчета - команда передается на последний включенный в Альфа-Авто ФР, хотя по кнопке "Выбор кассы (ФР)" выбирается конкретный. Отладка в конфигураторе показала, что Х-отчет снимается в функции "ДействиеХОтчет" в модуле обработки "Фронт кассира" на строке
КодОшибки=Рарус_Компонента.ЗаказатьВыполнениеДействияСинхронно(GUID_ФР,"Х_Отчет",,ТаймаутФР);
в которой переменная GUID_ФР содержит верный идентификатор, но Х-отчет все-равно снимается на другом ФР.
Более подробную информацию отправил на mailto:alfa@rarus.ru alfa@rarus.ru
При использовании ДТО8 чеки автоматически отправлялись в нужный ФР (делал доработку, которая подставляет нужный ФР и документ "Чек на оплату" и в Фронт кассира пр оплате через фронт менеджера по кнопке "Оплата" через связь ПодразделениеКомпании->КассаККМ-ФР). При использовании ДТО10 эта доработка уже не работает, хотя нужный ФР передается и в Чек на оплату, и в фронт менеджера - чек всегда выходит на последнем включенном ФР, независимо от того, на терминальном сервере пробивать, или на самом компьютера кассира
а выбор его идентификатора GUID_ФР..
может это поможет..
Не помогло.
Даже на самом простейшем сценарии - снятии Х-отчета - команда передается на последний включенный в Альфа-Авто ФР, хотя по кнопке "Выбор кассы (ФР)" выбирается конкретный. Отладка в конфигураторе показала, что Х-отчет снимается в функции "ДействиеХОтчет" в модуле обработки "Фронт кассира" на строке
КодОшибки=Рарус_Компонента.ЗаказатьВыполнениеДействияСинхронно(GUID_ФР,"Х_Отчет",,ТаймаутФР);
в которой переменная GUID_ФР содержит верный идентификатор, но Х-отчет все-равно снимается на другом ФР.
Более подробную информацию отправил на mailto:alfa@rarus.ru alfa@rarus.ru
При использовании ДТО8 чеки автоматически отправлялись в нужный ФР (делал доработку, которая подставляет нужный ФР и документ "Чек на оплату" и в Фронт кассира пр оплате через фронт менеджера по кнопке "Оплата" через связь ПодразделениеКомпании->КассаККМ-ФР). При использовании ДТО10 эта доработка уже не работает, хотя нужный ФР передается и в Чек на оплату, и в фронт менеджера - чек всегда выходит на последнем включенном ФР, независимо от того, на терминальном сервере пробивать, или на самом компьютера кассира
а выбор его идентификатора GUID_ФР..
может это поможет..
Не помогло.
Даже на самом простейшем сценарии - снятии Х-отчета - команда передается на последний включенный в Альфа-Авто ФР, хотя по кнопке "Выбор кассы (ФР)" выбирается конкретный. Отладка в конфигураторе показала, что Х-отчет снимается в функции "ДействиеХОтчет" в модуле обработки "Фронт кассира" на строке
КодОшибки=Рарус_Компонента.ЗаказатьВыполнениеДействияСинхронно(GUID_ФР,"Х_Отчет",,ТаймаутФР);
в которой переменная GUID_ФР содержит верный идентификатор, но Х-отчет все-равно снимается на другом ФР.
Более подробную информацию отправил на mailto:alfa@rarus.ru alfa@rarus.ru
Правильный GUID - {2AD72DAF-FBFD-46CA-8CD3-2885D6F81317}, в ОборудованиеХ_Отчет GUID уже другой и не совпадает ни с одним из идентификаторов оборудования
Прикрепленные файлы
https://rarus.ru/forum/forum7/topic3973/message84007/#message84007
Вот такого
я думаю что в модуле фронта не хватает кусочка
Вот такого
Прикрепленные файлы
Проблема с Х-отчетом решена, чего не сказать об обычных чеках продажи.
// Фискальный регистратор //Если ПараметрыСеанса.Компьютер.ФР.Пустая() Тогда GUID_ФР=""; // --- Доработки //Иначе GUID_ФР=ПараметрыСеанса.Компьютер.ФР.ИдентификаторОборудования; // === Доработки //Иначе GUID_ФР=ЭтотОбъект.ФР.ИдентификаторОборудования; GUID_ФР=ЭтотОбъект.ФР.ИдентификаторОборудования; //КонецЕсли; // +++ Доработки Если НЕ ПустаяСтрока(GUID_ФР) Тогда // Есть устройство, включаем его // --- Доработки //ТаймаутФР=ПараметрыСеанса.Компьютер.ФР.Таймаут; // === Доработки ТаймаутФР=ЭтотОбъект.ФР.Таймаут; // +++ Доработки Если глТорговоеОборудование.СтатусОборудования(GUID_ФР)=Перечисления.СтатусыОборудования.Включено Тогда // --- Доработки //ФР=ПараметрыСеанса.Компьютер.ФР; // === Доработки ФР=ЭтотОбъект.ФР; GUID_ФР=ЭтотОбъект.ФР.ИдентификаторОборудования; // +++ Доработки // возможная доработка ОписаниеОшибки=""; КодОшибки=глТорговоеОборудование.ВыключитьОборудование(GUID_ФР,ОписаниеОшибки); Если НЕ РезультатРаботыСОборудованием("Фискальный регистратор",КодОшибки,ОписаниеОшибки) Тогда Результат=Ложь; GUID_ФР = ""; КонецЕсли; // возможная доработка КонецЕсли; //Иначе ОписаниеОшибки=""; КодОшибки=глТорговоеОборудование.ВключитьОборудование(GUID_ФР,ОписаниеОшибки); Если НЕ РезультатРаботыСОборудованием("Фискальный регистратор",КодОшибки,ОписаниеОшибки) Тогда Результат=Ложь; GUID_ФР=""; // Считаем что у нас нет ФР'а в текущем сеансе работы Иначе // --- Доработки //ФР=ПараметрыСеанса.Компьютер.ФР; // === Доработки ФР=ЭтотОбъект.ФР; GUID_ФР=ЭтотОбъект.ФР.ИдентификаторОборудования; // +++ Доработки КонецЕсли; // возможная доработка //КонецЕсли; Если НЕ ПустаяСтрока(GUID_ФР) Тогда ТмпЗнач=0; Если глТорговоеОборудование.ПолучитьЗначениеСвойстваОборудования(GUID_ФР,"ДлинаСтроки",ТмпЗнач) И (ТмпЗнач>0) Тогда ДлинаСтрокиФР=ТмпЗнач; КонецЕсли; // Получим доступные виды оплат ПолучитьДоступныеВидыОплат(); КонецЕсли; КонецЕсли;Вот так сейчас у нас выглядит код в функции ВключитьОборудование() в обработке ФронтКассира, но чеки иногда все еще пробиваются на последнем включенном ФР
Все решатся в 5 строк 1.это заменяется гуид где я показал 2.к подразделению привязывается фр и в момент пробития в зависимости от подразделения подставляется касса.этот код не нужен.он не к месту
у нас в дкОбработкаРеквизита() общего модуля дкДокументы подставляются в реквизиты обработки ФронтКассира ФР, GUID_ФР и КассаККМ, и только потом вызывается ОплатитьДокумент().
GUID_ФР везде где только можно поставляется для исключения подмены на тот, который прописан в справочнике рабочих мест.
в ЗагрузитьЧек() происходит подмена ФР на тот, который указан в справочнике рабочих мест, поэтому пришлось ввести дополнительных переменные для сохранения изначальных правильных значений
ФР у нас привязан к КассеККМ, которая в свою очередь привязана к Подразделению.
Этот код без проблем работал в соседнем автосалоне много лет, после введения онлайн-касс был модифицирован, в ДТО 8 проблем нет, только на ДТО 10 начались проблемы.
Проблема снятия х-отчета была аналогичной и решилась выключением включенного нужного ФР и его последующим включением, но при пробитии чеков это не полностью помогло, не всегда, но чек выходит именно на последнем включенном ФР.
Скриншоты кода прилагаю
Прикрепленные файлы
Проблему решил следующим кодом в ВключитьОборудование():
// Фискальный регистратор // --- Доработки //Если ПараметрыСеанса.Компьютер.ФР.Пустая() Тогда GUID_ФР=""; //Иначе GUID_ФР=ПараметрыСеанса.Компьютер.ФР.ИдентификаторОборудования; // === Доработки GUID_ФР = ЭтотОбъект.ФР.ИдентификаторОборудования; //КонецЕсли; // +++ Доработки Если НЕ ПустаяСтрока(GUID_ФР) Тогда // Есть устройство, включаем его // --- Доработки //ТаймаутФР=ПараметрыСеанса.Компьютер.ФР.Таймаут; // === Доработки ТаймаутФР = ЭтотОбъект.ФР.Таймаут; ФР = ЭтотОбъект.ФР; // +++ Доработки Если глТорговоеОборудование.СтатусОборудования(GUID_ФР)=Перечисления.СтатусыОборудования.Включено Тогда // --- Доработки //ФР=ПараметрыСеанса.Компьютер.ФР; // === Доработки // +++ Доработки ОписаниеОшибки=""; КодОшибки=глТорговоеОборудование.ВыключитьОборудование(GUID_ФР,ОписаниеОшибки); Если НЕ РезультатРаботыСОборудованием("Фискальный регистратор",КодОшибки,ОписаниеОшибки) Тогда Результат = Ложь; GUID_ФР = ЭтотОбъект.ФР.ИдентификаторОборудования; ТаймаутФР = ЭтотОбъект.ФР.Таймаут; ФР = ЭтотОбъект.ФР; КонецЕсли; КонецЕсли; //Иначе ОписаниеОшибки=""; КодОшибки=глТорговоеОборудование.ВключитьОборудование(GUID_ФР,ОписаниеОшибки); Если НЕ РезультатРаботыСОборудованием("Фискальный регистратор",КодОшибки,ОписаниеОшибки) Тогда Результат=Ложь; GUID_ФР=""; // Считаем что у нас нет ФР'а в текущем сеансе работы // --- Доработки //Иначе //ФР=ПараметрыСеанса.Компьютер.ФР; // === Доработки КонецЕсли; // +++ Доработки // возможная доработка //КонецЕсли; Если НЕ ПустаяСтрока(GUID_ФР) Тогда ТмпЗнач=0; Если глТорговоеОборудование.ПолучитьЗначениеСвойстваОборудования(GUID_ФР,"ДлинаСтроки",ТмпЗнач) И (ТмпЗнач>0) Тогда ДлинаСтрокиФР=ТмпЗнач; КонецЕсли; // Получим доступные виды оплат ПолучитьДоступныеВидыОплат(); КонецЕсли; КонецЕсли;и в дкОбработкаРеквизита()
ИначеЕсли Имя = "ОплатаЧерезКассу" Тогда #Если Клиент Тогда Если ЭтотОбъект.ЭтоНовый() ИЛИ ЭтотОбъект.Модифицированность() Тогда Предупреждение("Перед выполнением операции необходимо записать документ!"); РезультатОбработки = ЛОЖЬ; Иначе // --- Доработки //Обработки.ФронтКассира.Создать().ОплатитьДокумент(ЭтотОбъект.Ссылка); // === Доработки GUID_ФР = ЭтотОбъект.ПодразделениеКомпании.КассаККМ.ФР.ИдентификаторОборудования; ККТ_глТорговоеОборудование = Обработки.ТорговоеОборудование.Создать(); Если ККТ_глТорговоеОборудование.СтатусОборудования(GUID_ФР)=Перечисления.СтатусыОборудования.Включено Тогда ОписаниеОшибки=""; КодОшибки=ККТ_глТорговоеОборудование.ВыключитьОборудование(GUID_ФР,ОписаниеОшибки); КонецЕсли; ОписаниеОшибки=""; ККТ_глТорговоеОборудование.ВключитьОборудование(GUID_ФР,ОписаниеОшибки); ФронтКассира = Обработки.ФронтКассира.Создать(); ФронтКассира.ФР = ЭтотОбъект.ПодразделениеКомпании.КассаККМ.ФР; ФронтКассира.GUID_ФР = ЭтотОбъект.ПодразделениеКомпании.КассаККМ.ФР.ИдентификаторОборудования; ФронтКассира.КассаККМ = ЭтотОбъект.ПодразделениеКомпании.КассаККМ; ФронтКассира.ОплатитьДокумент(ЭтотОбъект.Ссылка); // +++ Доработки КонецЕсли; #КонецЕсли ИначеЕсли Имя = "ВыгрузитьВШаблон" ТогдаКак можно получить заплатку исправляющую проблему некорректного пробития отчетов и чеков,
если пользователь одновременно использует несколько разных ФР ?
Ручной выбор ФР во фронте менеджера тоже не работает. выбирается один ФР,
а чеки уходят на последний включенный..
2 фискальных регистратора
Александр Мещеряков , заплатку можно получить на почте техподдержки, но сразу оговорюсь, что придется каждый раз выбирать нужный ФР, иначе будет выбран тот, что по умолчанию стоит в рабочем месте
Будет ли в решена эта проблема в ближайшем релизе?..
и я надеюсь что не включением нужного ФР,
а как было с 8 ДТО - печаталось туда, куда посылалось,
а не туда, что включилось последним..
/forum/user/5205/ Александр Мещеряков, да, в будущем релизе будет данное исправление
Версия Альфы 5.1.24.04
ФР Атол 30Ф ДТО10
Ситуация следующая: Одна Альфа, две организации, один кассир, один комп, два ФР. В зависимости от организации в документе, нужно пробивать на разных ФР.
Пытаюсь подключить второй фискальный регистратор к компьютеру. И сравнивая, что написано выше с тем, что происходит у нас, понимаю, что вопрос не решен до сих пор?
В зависимости от организации в документе, нужно пробивать на разных ФР.
В зависимости от организации в документе, нужно пробивать на разных ФР.
Как я понимаю, если у нас два компа в разных точках (скажем Comp1 и Comp2) и два разных ФР1 и ФР2 (соответственно), работа ведется по РДП (Server), база одна. Все отлично работает когда
Пользователь 1 - на Comp1 - ФР1 - Рабочее место получается Server; (Пользователь1), куда прописана ФР1
Пользователь 2 - на Comp2 - ФР2 - Рабочее место получается Server; (Пользователь2), куда прописана ФР2
НО когда Пользователь 1 приходит работать на другую точку и садится за Comp2 -рабочее место то все равно подцепляется Server; (Пользователь1), и его касса соответственно, НО тут нужна касса ФР2. При попытке выбирать кассы через Форт менеджер к успеху не приводят (версия Альфы 5,1,25,02)
Стандартных методов решения все еще нет? Нельзя ли каким-то образом получать еще имя компа пользователя, если работа ведется через терминал?
Нельзя ли каким-то образом получать еще имя компа пользователя, если работа ведется через терминал?