Skip to content

Commit

Permalink
Assembly v 5.6.5 (9.06.24)
Browse files Browse the repository at this point in the history
  • Loading branch information
adslbarxatov committed Jun 9, 2024
1 parent fc815a9 commit f783861
Show file tree
Hide file tree
Showing 10 changed files with 175 additions and 21 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/Release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
# Константы, используемые далее по тексту
env:
PROJ: ${{ github.event.repository.name }}
TAG: '5.6.4'
TAG: '5.6.5'

steps:
# Проверка состава репозитория (без анализа, как может показаться)
Expand Down
Binary file modified .release/KassArray.apk
Binary file not shown.
Binary file added .release/KassArray.exe
Binary file not shown.
Binary file added .release/KassArrayDB.dll
Binary file not shown.
Binary file added .release/KassArrayFN.exe
Binary file not shown.
Binary file added .release/KassArrayLL.dll
Binary file not shown.
146 changes: 146 additions & 0 deletions .release/KassArray_ru_ru.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,146 @@
<html charset='utf-8'>

<head>
<title>Инструмент сервис-инженера контрольно-кассовой техники KassArray: руководство пользователя | KassArray</title>
</head>

<body>

<h1 id="kassarray--">Инструмент сервис-инженера контрольно-кассовой техники KassArray: руководство пользователя</h1>
<blockquote>
<p><strong>ƒ</strong>  RD AAOW FDL; 23.04.2024; 2:46</p>
</blockquote>

<h2 id="kassarray">Общие сведения об инструменте KassArray</h2>
<p>Инструмент позволяет:</p>
<ul>
<li>просматривать и сохранять / отправлять на печать <em><strong>инструкции по работе с ККТ</strong></em>;</li>
<li>просматривать расшифровки <em><strong>кодов ошибок ККТ</strong></em>;</li>
<li>определять <em><strong>срок жизни ФН</strong></em> в соответствии параметрами пользователя, от которых он зависит;</li>
<li>определять <em><strong>корректность регистрационного номера ККТ</strong></em> и <em><strong>генерировать его</strong></em> при необходимости;</li>
<li>определять <em><strong>соответствие моделей ККТ версиям ФФД</strong></em>;</li>
<li>получать <em><strong>настройки операторов фискальных данных</strong></em> (ОФД) по их ИНН или названиям;</li>
<li>получать <em><strong>описания и признаки обязательности TLV-тегов</strong></em> для различных ФФД (cписок поддерживаемых
TLV-тегов можно посмотреть <a href="https://github.com/adslbarxatov/KassArray/blob/main/src/FNReader/FNEnums.h">здесь</a>);</li>
<li>получать описания <em><strong>команд нижнего уровня</strong></em>;</li>
<li>вручную (без использования внешней клавиатуры) <em><strong>программировать текстовые данные в ККТ</strong></em>, имеющих только цифровую клавиатуру;</li>
<li>автоматически <em><strong>определять модели ККТ и фискальных накопителей</strong></em> (ФН) по их заводским номерам, а также регионы РФ по кодам ИНН;</li>
<li>просматривать <em><strong>распиновки кабелей</strong></em> ККТ – ПК, ККТ – ДЯ и ККТ – Принтер;</li>
<li>определять <em><strong>типы штрих-кодов</strong></em> и разбирать их содержимое (включая DataMatrix маркируемых товаров);</li>
<li>дополнительно: получать разложения и представления чисел в системах счисления с основаниями 2, 10 и 16;</li>
<li>дополнительно: преобразовывать коды Unicode в символам и наоборот;</li>
<li>дополнительно: преобразовывать двоичные данные в текст и обратно.</li>
</ul>
<p>Инструмент также может быть добавлен в автозапуск при установке; при запуске системы он остаётся свёрнутым
в значок в трее. По нажатию на этот значок он может быть повторно вызван или свёрнут обратно.</p>
<p>Для приложения доступны функции «Поверх всех окон» и «Режим сервис-инженера». Последний переводит приложение
в режим полной функциональности и открывает опции, которые не должны быть доступны оператору или кассиру
(например, команды нижнего уровня или работу с ФН). Соответствующие флажки доступны на последней вкладке.</p>
<hr />

<h2 id="kassarray-1">Модуль чтения и обработки данных ФН для KassArray</h2>
<h2 id="section-1">1. Общие сведения</h2>
<p>Модуль предназначен для чтения и обработки фискальных данных (ФД) из фискального накопителя (ФН).
Далее представлено полное описание функционала приложения. Быстрые руководства по распространённым
операциям Вы можете найти на <a href="https://adslbarxatov.github.io/KassArray/quick">отдельной странице</a>.</p>
<p> </p>
<p>Доступные функции:</p>
<ol>
<li>
<p><em><strong>Чтение данных из ФН</strong></em> с помощью физического или виртуального COM-порта и аппаратного адаптера.</p>
</li>
<li>
<p><em><strong>Формирование выгрузок архивов ФН в формате</strong></em> <code>.fnc</code> в соответствии с <a href="https://nalog.gov.ru/rn77/about_fts/docs/10020801">Приложением №2</a> к приказу
ФНС России «Форматы фискальных документов, обязательные к использованию» для версий ФФД <code>1.05</code> и <code>1.2</code>. Выгрузка в ФФД <code>1.1</code>
также реализована, но находится в тестировании и может работать некорректно.</p>
</li>
<li>
<p><em><strong>Обработка фискальных данных</strong></em>:</p>
<ul>
<li>Получение полного состояния и всех регистрационных данных ФН;</li>
<li>Получение отдельного документа ФН;</li>
<li>Получение контрольной ленты за отдельную смену;</li>
<li>Получение полного фискального (посменного) отчёта;</li>
<li>Получение посменного отчёта по диапазону дат;</li>
<li>Прямой запрос счётчиков ФН (для ФФД <code>1.1</code> и выше);</li>
<li>Расчёт гросс-итогов по данным фискальных документов (для файлов и ФФД <code>1.05</code>);</li>
<li>Прямое чтение документов за определённую дату и расчёт сменных итогов.</li>
</ul>
</li>
<li>
<p><em><strong>Сохранение архива ФН в файл</strong></em> в форматах:</p>
<ul>
<li>Двоичных данных (<code>.fsd</code>). Это внутренний формат программы, который не может быть использован
при перерегистрации или снятии ККТ с учёта в личном кабинете ФНС. Однако он доступен для последующего открытия и статистической обработки в программе.</li>
<li>Табличных данных (<code>.csv</code>, доступен для обработки в Microsoft Office Excel).</li>
</ul>
</li>
<li>
<p><em><strong>Выполнение обмена с ОФД</strong></em> с параметрами подключения, получаемыми автоматически по данным последней
регистрации / перерегистрации, или с параметрами, соответствующими выбранному ОФД. Обмен включает:</p>
<ul>
<li>Передачу фискальных документов;</li>
<li>Передачу уведомлений о реализации маркированного товара;</li>
<li>Обновление ключей проверки кодов маркировки.</li>
</ul>
</li>
<li>
<p><em><strong>Выполнение операций записи в ФН</strong></em>:</p>
<ul>
<li>Открытие смены;</li>
<li>Закрытие смены;</li>
<li>Закрытие архива ФН;</li>
<li>Сброс МГМ (для технических целей).</li>
</ul>
</li>
</ol>
<p>Первые три задачи могут быть выполнены с применением текущей даты или даты последнего документа ФН (для ФН с истекшим сроком жизни).</p>
<ol start="7">
<li>
<p><em><strong>Чтение и статистическая обработка выгрузок архивов ФН</strong></em> в форматах <code>.fnc</code> и <code>.fsd</code>.</p>
</li>
<li>
<p><em><strong>Формирование выгрузки уведомлений о реализации маркированного товара</strong></em> (при работе в автономном режиме)
в формате <code>.fnm</code> в соответствии с Приложением 2 к приказу
ФНС России «Форматы фискальных документов, обязательные к использованию» для версии ФФД <code>1.2</code> (<em><strong>находится в тестировании</strong></em>).</p>
</li>
<li>
<p><em><strong>Кэширование имеющихся файлов</strong></em> <code>.fnc</code> и быстрый доступ к любому из них с помощью поиска по ИНН, заводским номерам,
РНМ или наименованиям пользователей.</p>
</li>
</ol>
<p>Чтение может быть выполнено четырьмя способами:</p>
<ul>
<li><em><strong>Полное чтение архива</strong></em>. По его завершении становятся доступными все функции обработки данных.</li>
<li><em><strong>Прямое чтение ФН</strong></em>. В этом случае доступны только функции чтения статуса ФН и содержимого отдельного документа.</li>
<li><em><strong>Формирование выгрузки .fnc с последующей её загрузкой</strong></em>. Работает аналогично первому варианту, но набор
реквизитов документов будет неполным, т.к. в файлах выгрузок они хранятся в ограниченном составе.</li>
<li><em><strong>Прямое чтение документов из ФН за указанную дату</strong></em>. Данный способ позволяет сформировать сменные
итоги без полного считывания ФН. Аналитика при этом останется недоступной.</li>
</ul>
<p>Независимо от варианта и настроек чтения состояние ФН запрашивается в максимально полном виде. Количество видимых регистраций
и перерегистраций может быть ограничено последней (актуальной), если выбрана соответствующая опция.</p>
<p>Детализация чтения может быть:</p>
<ul>
<li><em><strong>Полной</strong></em>. При этом из ФН считываются все TLV-теги (в том числе – неизвестные приложению с представлением
в шестнадцатеричной форме) и квитанции подтверждения ОФД. Может занимать продолжительное время.</li>
<li><em><strong>Неполной</strong></em>. Из ФН считываются только известные приложению TLV-теги. По скорости не отличается от предыдущего варианта.</li>
<li><em><strong>Краткой</strong></em>. При этом считываются только суммовые счётчики, временны́е метки, номера, фискальные признаки
документов и состояния отправки ОФД. Выполняется быстрее полного считывания примерно в два раза.</li>
</ul>
<p>Работа программы протестирована на всех моделях ФН из <a href="https://nalog.gov.ru/rn77/related_activities/registries/reestr_fiscal">реестра ФНС</a>.
При соблюдении производителями существующего аппаратного протокола чтения данных работа с будущими моделями ФН также будет возможна.
Однако выгрузка в формате <code>.fnc</code> требует дополнительных исследований, в связи с чем модуль может не поддерживать эту функцию
для новейших моделей ФН.</p>
<p>Для выполнения операций с ФН требуется наличие одного из следующих аппаратных адаптеров:</p>
<ul>
<li>COM-UART переходник для подключения ФН к разъёму COM (RS-232) компьютера.</li>
<li>USB-VCOM-UART переходник для подключения к разъёму USB компьютера. В этом случае потребуется установить драйвера устройства;
инструкции и ссылки для их установки предоставляются производителями таких переходников.</li>
</ul>
<p>Обращаем внимание, что срок действия каждого релиза модуля ограничен с целью устранения устаревающих версий и обеспечения
его постоянного соответствия актуальным изменениям в ФФД. Срок указан в информационном окне, появляющемся при каждом запуске приложения. По его истечении
останутся доступными функции анализа ранее считанных данных. Для работы с новыми данными необходимо будет получить актуальный экземпляр приложения.</p>

</body>
</html>
9 changes: 5 additions & 4 deletions .release/Release.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
_Изменения для v 5.6.4_:
_Изменения для v 5.6.5_:
- Уточнены серии ЗН ККТ `Прим-07Ф`, `Прим-08Ф`, `Прим-21Ф`;
- Добавлена примерная серия ЗН ККТ `Ритейл-02Ф`;
- `Windows`: реализован новый интерфейс «О программе»;
- Обновлены ссылки на справку и поддержку;
- `Android`: возможно, исправлена проблема с зависанием тачскрина;
- Реализовано универсальное кеширование настроек приложения (исключены множественные обращения к реестру);
- Исправлены некоторые проблемы с конвертором символов;
- `Windows`: исправлено перекрытие сообщения по статисике по реестру ККТ в режиме «Поверх других окон»;
- Обновлён интерфейс отображения поддержки ФФД, добавлена статистика по реестру ККТ;
- Добавлены серии ЗН ККТ для `Атол 55 v2 Ф` и `Атол СТБ 6Ф`;
- Обновлены настройки ОФД `Тензор`
- Обновлён интерфейс отображения поддержки ФФД, добавлена статистика по реестру ККТ
10 changes: 4 additions & 6 deletions Changes.log
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
KassArray: лог изменений

ToDo:
- Протестировать ЗН ПРИМ:
1713354 ПРИМ 08Ф
16000** ПРИМ 07Ф
1701*** ПРИМ 21Ф
1703*** ~
Версия 5.6.5:
• Уточнены серии ЗН ККТ Прим-07Ф, Прим-08Ф, Прим-21Ф;
• Добавлена примерная серия ЗН ККТ Ритейл-02Ф;
• Windows: реализован новый интерфейс «О программе»

Версия 5.6.4:
• Обновлены ссылки на справку и поддержку;
Expand Down
29 changes: 19 additions & 10 deletions src/KKTSerial.cs
Original file line number Diff line number Diff line change
Expand Up @@ -330,23 +330,32 @@ public string RegistryStats
get
{
#if ANDROID
string t = " ";
#else
string t = RDLocale.T;
#endif
string res = "Моделей ККТ в реестре" + RDLocale.RN +
"(на " + ProgramDescription.AssemblyLastUpdate + "): " +
(registryStats[0] - registryStats[ffdNames.Length + 2]).ToString () + RDLocale.RNRN;
res += "Из них поддерживают:" + RDLocale.RN;

string res = t + "Моделей ККТ в реестре" + RDLocale.RN + t +
"(на " + ProgramDescription.AssemblyLastUpdate + "):" + t +
for (int i = 0; i < ffdNames.Length; i++)
res += " ФФД " + ffdNames[i] + ": " +
registryStats[1 + i].ToString () + RDLocale.RN;

res += RDLocale.RN + "Известно сигнатур ЗН: " +
names.Count.ToString () + RDLocale.RN;
res += " из них – точно: " + registryStats[ffdNames.Length + 1];
#else
string res = "\tМоделей ККТ в реестре" + RDLocale.RN +
"\t(на " + ProgramDescription.AssemblyLastUpdate + "):\t" +
(registryStats[0] - registryStats[ffdNames.Length + 2]).ToString () + RDLocale.RNRN;
res += t + "Из них поддерживают:" + RDLocale.RN;
res += "\tИз них поддерживают:" + RDLocale.RN;

for (int i = 0; i < ffdNames.Length; i++)
res += t + " ФФД " + ffdNames[i] + ": " + t + t +
res += "\t ФФД " + ffdNames[i] + ": \t\t" +
registryStats[1 + i].ToString () + RDLocale.RN;

res += RDLocale.RN + t + "Известно сигнатур ЗН:" + t +
res += RDLocale.RN + "\tИзвестно сигнатур ЗН:\t" +
names.Count.ToString () + RDLocale.RN;
res += t + " из них – точно:" + t + t + registryStats[ffdNames.Length + 1];
res += "\t из них – точно:\t\t" + registryStats[ffdNames.Length + 1];
#endif

return res;
}
Expand Down

0 comments on commit f783861

Please sign in to comment.