Форум по программам и оборудованию > > >

Как правильно принять кривую приходную ТТН с акцизными марками для продаж или списания в общепите

15.02.2019 22:46


28.12.2018 10:37
AndreyZh
 
С утра получил письмо и сразу ответил на него, т.к. тема и автор полностью удовлетворяет первым двум пунктам, слишком часто упоминаемой ссылки: https://olegon.ru/showpost.php?p=323639&postcount=51 Вкратце: перед массовыми новогодними банкетами популярный поставщик отправил накладные с криво оформленными некоторыми тэгами ТТН в области описания марок. Послать им его уже нет времени. Однако выкрутиться можно!
Цитата:
У всех моих клиентов которые используют УС Лэнд:ЕГАИС возникли проблемы при подтверждении накладных в которых есть новые марки. При открытии накладной появляется сообщение о том что она кривая и лучше отказаться от её приёмки. Накладные от двух разных поставщиков и в обоих случаях такая ситуация. Вот для примера "кусок" xml с марками из одной такой накладной
Код:
<wb:InformF2>
    <cv3:F2RegId>FB-000002027297245</cv3:F2RegId>
    <cv3:MarkInfo>
        <cv3:boxpos>
        <cv3:boxnumber>01000000055610118000109450</cv3:boxnumber>
            <cv3:amclist>
                <cv3:amc>1364000929271810......</cv3:amc>
                <cv3:amc>1364000929272710......</cv3:amc>
            </cv3:amclist>
        </cv3:boxpos>
    </cv3:MarkInfo>
</wb:InformF2>
Отказываться от этого алкоголя клиенты не могут. Как поступить с этими накладными?
1. Отправить акт приёма накладной без её просмотра и сохранения в БД "УСЕга" в режиме:





Если "УС Лэнд:ЕГАИС" может открыть её, пусть даже "капризнячая", то лучше открыть и сохранить через F10 в реестре приходных ТТН, если нужно будет: выгрузка в декларацию или построения отчетов по остаткам на дату/оборотки.

ТТН "УСЕга" может вообще "не видеть"! Тогда идем в режим "Прочие задачи/Чистка входящих и исходящих запросов. Анализ/печать входящих". Находим ТТН и сопутствующую ей файл FORM2REGINFO с справками РФУ-2 и регкодом ТТН. Справки "Б" потом можно будет запросить в режиме "Запросы/Разделов Б. РФУ-2 (по v2) по их кодам в ЕГАИС"


2. Минут через 10 после отправки подтверждения запросить остатки ЕГАИС в режиме:





3. Для запроса остатков регистра №3 и формирования правильного пула акцизных марок со всеми требуемыми признаками и остатками, которые понадобятся для списания по акцизкам или продажам по чекам.

Открываем справочник алкопродукции склада, например нажав Insert в списаниях по складу - откроется справочник:





Встаёте на последнюю запись наименования (+литраж) - при пополнении справочника добавляется в конец. В шапке не будет признака "АкцМарка" и нажимаете F7 для запроса остатков регистра №3... и так по всем товарам кривой приходной ТТН


4. Через 10-60 минут обновляете пул акцизных марок "УСЕга" через ответ/режим: "Ответы/Ответ-обновление по всем РФУ-2 остатков на рег.№3"... После этого алкопродукцию можно будет списывать и продавать"
09.02.2019 19:23
AndreyZh
 
Только кнут является реальным стимулом для русского человека из "глубинки"

Сегодня в 11:00 звонок из магазина, что при открытии программа ругается на "кривую накладную". Разобрался - нестандартные префиксы области описания РФУ-2, марок, групповой тары:
Код:
					<wb:boxInfo>
						<wb:boxtree xmlns:d7p1="http://fsrar.ru/WEGAIS/CommonV3">
							<d7p1:boxnum>146035140000975289</d7p1:boxnum>
							<d7p1:bl>
...													</wb:boxtree>
					</wb:boxInfo>
				</wb:Position>
				<wb:Position>
					<wb:Identity>2</wb:Identity>
					<wb:FARegId>FA-00000004****120</wb:FARegId>
					<wb:InformF2 xmlns:d6p1="http://fsrar.ru/WEGAIS/CommonV3">
						<d6p1:F2RegId>FB-0000*****347490</d6p1:F2RegId>
						<d6p1:MarkInfo>
							<d6p1:boxpos>
								<d6p1:amclist>
									<d6p1:amc>1044***********018001STJMF</d6p1:amc>
								</d6p1:amclist>
							</d6p1:boxpos>
						</d6p1:MarkInfo>
					</wb:InformF2>
					<wb:Product>
						<pref:UnitType>Packed</pref:UnitType>
						<pref:FullName>Дж0%</pref:FullName>
Отзвонился... сказал, что нужно отказываться от неё... Вскоре позвонил босс жестко, объяснив ситуацию: большой заказ для корпоративного клиента, машина с алкоголем уже выехала и будет в течении 5 дней. Отказ от заказа - это недополучение стольника прибыли и возможная потеря постоянного покупателя... что хочешь, но оприходывание и продажа по маркам должна быть проведена! Конечно, зная, описанный выше механизм обещал, что проблем не будет... хотя более 500 бутылок провести "ручками" будет проблематично

Тупо изучая исходники работы с ТТН обнаружил, что ещё в 2015 заложил механизмы работы с XML файлами, содержащими некорректные символы, а именно работа со входящими документами строится так:

1. Закачка XML файла в кодировке UTF-8 в символьную строку памяти;
2. Преобразование строки из UTF-8 в 866 кодировку;
3. Замещение "кривых" символов пробелами;
4. Сохранение новой строки во временный XML файл 866 кодировки.

... дальнейшая работа уже производится с "моим" файлом, используя средства инструмента разработки... и тут осенило - почему на этапе 3. не заместить кривые префиксы на стандартные? Тогда всё должно правильно работать?

Сказано - сделано: добавлен режим описания схемы преобразования нестандартных префиксов пространства имен. В принципе для всех "чудотворцев" можно "дописывать" в текстовом файле, для всех в единственной строке, а от туда копировать в режим:





Дальше написание общих функций чтения схемы и преобразование по ней передаваемой текстовой строки. Затем внимательный просмотр всех режимов и в процедурах, где считывается ТТН для анализа и/или извлечения информации прогон её (считанной строки памяти) через схему преобразования... в общем не много получилось изменений.

Увы, но это была ТТН в реальном контуре, а посему отладка, которая не меняла данных ЕГАИС шла по удаленке... но всё получилось - как пример преобразованной ТТН:
Код:
<wb:FARegId>FA-00000004*****74</wb:FARegId>
	<wb:InformF2 xmlns:d6p1="http://fsrar.ru/WEGAIS/CommonV3">
		<ce:F2RegId>FB-00000*****319</ce:F2RegId>
			<ce:MarkInfo>
				<ce:boxpos>
					<ce:boxnumber>01005400252310****081225</ce:boxnumber>
						<ce:amclist>
							<ce:amc>136********NI</ce:amc>
и всё Программа корректно работает с нестандартными префиксами, в её терминах "кривыми накладными", а если схемы не задавать, то и без задержек...

Последний раз редактировалось AndreyZh; 09.02.2019 в 19:26.
09.02.2019 19:28
FinSoft
 
Я перешел на использование пространства имен. Пока все нормально, заодно сюрпризов больше не должно быть, без разницы, как поставщикам придет в голову тэги называть...

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.