Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
26 июн 2024, 13:41

Получить данные с фискальника. Как, подскажите

Автор AnIzotova, 12 авг 2016, 08:10

0 Пользователей и 1 гость просматривают эту тему.

AnIzotova

День добрый. помогите советом: у меня 1С 8.1. нетиповая. Необходимо нарисовать в ней справку-счет КМ-6. с привязкой данных по деньгам к отдельным фискальным принтерам.   три фискальных принтера подключены к трем компьютерам, в одной базе сидят.
Скажите, можно каким то образом получить с фискальника по итогам смены  суммы (показания суммирующего счетчика на начало, на конец дня, выручка за нал, безнал, возвраты ) ?
у меня есть эти движения в самой базе, в регистре, куда они пришутся при проведении каждого Приходника и Расходника, но они не бьются на "приход с 1-го фискальника", "приход со 2-го". я думаю, может в Приходнике/расходнике реквизит завести, что бы движение помечалось - на какой именно фискальник эта сумма ушла/вернулась, но я не знаю КАК получить ответ от принтера - код например может, какой именно это принтер ? что бы эту метку передавать и записывать в документы/движения.

подскажите, как можно выкрутиться ?

vitasw

копайте код в базе. Вывод чека всегда производится на заранее известный ККМ, вам НЕ нужно пытаться получать код от фискальника, а нужно раскопать код и понять как определяется оборудование для вывода. на 99% уверен что дело в кассе ККМ.

AnIzotova

Есть обработка Подключение и настройка торгового оборудования. там выбирается фискальный принтер, из справочника Фискальников, ставится по умолчанию.
а сам приходиник, делает так:
Если Не Константы.ВключатьТорговоеОборудованиеПриОткрытииФорм.Получить() Тогда
ПолучитьСерверТО().ПодключитьКлиента(ЭтаФорма);
КонецЕсли;



ПарольКассира = ПолучитьСерверТО().ПолучитьПарольКассираККМ();
ФР   = обПолучитьЗначениеНастройкиПользователя(ПланыВидовХарактеристик.ПользователиСистемы.ИдентификаторУстройстваВыбранногоПоУмолчанию);
Сообщить(ФР);
Если Не ЗначениеЗаполнено(ФР) Тогда
МассивФР      = ПолучитьСерверТО().ПолучитьСписокУстройств(
Перечисления.ВидыТорговогоОборудования.ФискальныйРегистратор,
Неопределено);

ФР            = Неопределено;
СписокФР      = Новый СписокЗначений();
Вид           = Неопределено;
Представление = Неопределено;

Для каждого ФР Из МассивФР Цикл
ПолучитьСерверТО().ПолучитьПредставлениеУстройства(ФР, Вид, Представление);
СписокФР.Добавить(ФР, Представление);
КонецЦикла;
Иначе
СписокФР      = Новый СписокЗначений();
Вид           = Неопределено;
Представление = Неопределено;

ПолучитьСерверТО().ПолучитьПредставлениеУстройства(ФР, Вид, Представление);
СписокФР.Добавить(ФР, Представление);
КонецЕсли;

КоличествоФР = СписокФР.Количество();
Если      КоличествоФР = 0 Тогда
Предупреждение("Фискальный регистратор не подключен!");
ФР = Неопределено;
ИначеЕсли КоличествоФР = 1 Тогда
ФР = СписокФР[0].Значение;
Иначе
ФР = СписокФР.ВыбратьЭлемент("Необходимо выбрать фискальный регистратор");
Если ФР = Неопределено Тогда
Предупреждение("Операция отменена пользователем");
Иначе
ФР = ФР.Значение;
КонецЕсли;
КонецЕсли;

Если НЕ ЗначениеЗаполнено(ФР) Тогда
Возврат;
КонецЕсли;

видимо тут он и проверяет, что именно подключено по умолчанию, и обращается к нему для печати.
мне бы из этого запроса(обращения) какую нибудь привязку к выбранному фискальнику найти, что бы ее в приходник вписать, пометить его какбы, что данный документ печатали на Этом фискальнике, а не на соседнем (компов то несколько, принтеров тоже, а база одна)

vitasw

Ну и? в чем проблема. У вас есть определение ФР, пихайте его потом куда хотите.

Похожие темы (5)

Рейтинг@Mail.ru

Поиск