Вы находитесь на странице: 1из 11

Датекс Украина

Руководство по использованию консольного


приложения
sm300Con

Версия 3.10

2002
Датекс Украина

1. Назначение

Консольное приложение sm300Con предназначено для настройки весов Digi SM300 (и/или SM100)
и записи информации об артикулах в весы, подключенные в локальную сеть с помощью протокола
TCP/IP. Программное обеспечение может работать в операционных системах Windows
98/Me/NT/2000/XP.
Помимо этого приложение позволяет снять с весов отчеты товаров и главных групп.

Приложение может быть запущено:


1) из меню Пуск (подменю Выполнить)
2) из файловых менеджеров (Volkov Commander, Far, Windows Commander)
3) из другой программы с помощью Win32 API функций (ShellExecute, CreateProcess) или с
помощью других мпециализированных средств, имеющихся в среде разработки.

Входными параметрами приложения являются:


1) логический идентификатор весов в локальной сети
2) файл sm300Con.txt – файл с информацией о записуемых артикулах в весы
3) системный файл Host, предназначенный для отображения идентификаторов весов в сети в
реальные IP-адреса весов

В результате выполнения приложения:


1) информация об артикулах записывается в весы и они готовы выполнять взвешивание
товара с печатью этикеток
2) создаётся файл с именем error, если после выполнения операции в нём записано значение
0, то операция записи артикулов выполнилась без ошибок, отрицательное значение
записанное в файле говорит о ошибке при выполнении операции записи информации в
весы

2. Комплектность

 Консольное приложение sm300Con


 драйвер twswtcp.exe (все права принадлежат TERAOKA WEIGH-SYSTEM PTE LTD)
 файлы F34.DAT, F38.DAT – файлы для настройки вида чека
 sm300Con.txt – пример файла с артикулами

3. Настройка программы

1) Настройте весы Digi SM300 на корректные IP-адреса и подключены в локальную сеть.


2) Информация об адресах и логических идентификаторах весов должна быть занесена в
файл Hosts (расширение имени файла отсутствует, не перепутайте с Hosts.sam).
Местоположение файла Hosts в системе:
 Windows 98/Me – в каталоге Windows
 Windows NT/2000/XP – в каталоге Windows\System32\Drivers\Etc
3) Стандартный вид файла Hosts как правило следующий:

# (C) Корпорация Майкрософт (Microsoft Corp.), 1993-1999


#
# Это образец файла HOSTS, используемый Microsoft TCP/IP для Windows.
#
# Этот файл содержит сопоставления IP-адресов именам узлов.

2002
Датекс Украина
# Каждый элемент должен располагаться в отдельной строке. IP-адрес должен
# находиться в первом столбце, за ним должно следовать соответствующее имя.
# IP-адрес и имя узла должны разделяться хотя бы одним пробелом.
#
# Кроме того, в некоторых строках могут быть вставлены комментарии
# (такие, как эта строка), они должны следовать за именем узла и отделяться
# от него символом '#'.
#
# Например:
#
# 102.54.94.97 rhino.acme.com # исходный сервер
# 38.25.63.10 x.acme.com # узел клиента x

127.0.0.1 localhost

4) Для каждого экземпляра весов находящегося в системе добавьте строку, связывающую


логический идентификатор и IP адрес. Идентификаторы должны иметь следующий вид:
S0XXX, где XXX – четвертое число в IP адресе весов. То есть, если адрес весов
192.168.0.2, то в файл Hosts добавьте строку:
192.168.0.2 S0002
Если адрес 192.168.0.20 , то добавьте следующую строку:
192.168.0.20 S0020
Не забывайте, что Ваши весы должны быть запрограммированы на различные IP адреса и в
файле Hosts должна быть информация о всех Ваших весах подключенных в локальную
сеть.
5) Корректно разместите программное обеспечение в каталог на диске, при этом :
 все файлы, перечисленные в разделе комплектность должны находится в одном
каталоге на диске
 В пути каталога не допускаются русские буквы и специальные знаки
 В пути каталога не допускаются пробелы

Пример.
С:\Digi\Sm3000\Console\ - правильно
C:\Program Files\Digi\ – неправильно
C:\Мои документы\Sm300\ - неправильно

Рекомендуемый каталог два/три уровня вложениея с короткими названиями подкаталагов.

6) Создать и заполнить содержимое файла sm300con.ini для определения дополнительных


параметров программирования весов.

Примечание. В некоторых случаях, например, когда компьютеры работают без контроллера


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

4. Подготовка данных для программы

Для программирования весов (запись информации о товарах, формат этиктки и т.д.) необходимо
приготовить данные, обеспечивающие эти операции.
Эти данные, которые являются содержимым файла sm300con.txt. Каждая строка файла – это
информация об отдельном артикуле, который должен быть загружен в весы. Обобщённый вид
строки файла sm300con.txt:
<Номер артикула><разделитель><Название артикула><разделитель><Цена за единицу>
либо

2002
Датекс Украина
<Номер артикула><разделитель><Название артикула><разделитель><Цена за
единицу><разделитель><тип артикула><разделитель><срок годности>< разделитель>

где
<Номер артикула> - номер артикула, по которому может быть получена штриховая этикетка
(предполагается не более 5 знаков)
<разделитель> - разделитель между полями в файле (по умолчанию – табуляция, в зависимости от
командной строки возможны также: запятая, точка, точка с запятой, #)
<Название артикула> - название артикула (до 48 символов). В названии допускаются украинские
буквы: ЄєЇї. Украинская буква Іі в названии не допускается, если она необходима, то Вы должны
заменить её на английский эквивалент. Если в названии больше 24 букв, то оставшаяся часть (без
учета грамматики и синтаксиса) переносится в следующую строку названия.
<Цена за единицу> - стоимость единицы товара. В качестве разделителя между целой и дробной
частью нельзя использовать текущий знак разделителя полей в файле. В то же время разделителем
целой и дробной частиможет быть точка, запятая или можно указывать стоимость без разделителя,
при этом считается, что задана цена в копейках.
Невыполнение вышеуказанных требований приведёт к некорректному программированию весов.
Ответственность за создание корректного файла sm300con.txt возлагается на пользователей
программы.
<тип артикула> - артикул может быть весовой и штучный; предполагается, что если используется
строка без указания типа артикула, то артикул является весовым. Если используется строка с
типом артикула, то <тип артикула> может быть 0 – весовой артикул, 1 – штучный артикул.
<срок годности> - указывается в днях (от даты печати этикетки). Если этот параметр не указан, то
срок годности не печатается в этикетке.

Пример файла sm300con.txt:

127 Макароны 7.52


11450 Ковбаса докторська 14.50
1 Риба Короп 12.25
1 Масло сливочное 3.85 1
222229 Ковбаса докторська 15.78 8

Данный файл может быть создан с помощью программы Блокнот (Notepad) или с поиощью
специализировнных приложений разработчиков.

5. Формат sm300con.ini

Секция [Params] отвечает за дополнительные параметры перечень и значение, которых приведены


ниже.

Label Format=значение
Выбирается тип этикетки, который будет использован для программируемых в весы артикулов.
Если значение не указано или данный параметр отсутствует, то используется 17 (этикетка F1).
Этикетка F1 формируется программой sm300Con. Если Вы хотите использовать другую этикетку,
Вы должны запрограммировать её в весы самостоятельно.

Barcode Prefix=значение
Выбирается два первых символа (префикс) баркода. Если значение не указано или данный
параметр отсутствует, то используется 25.

Barcode Type=значение
Выбирается тип баркода. Если значение не указано или данный параметр отсутствует, то
используется 5. Если необходимо использовать 6 символов в номере артикула, то рекомендуется
использовать тип 4.

2002
Датекс Украина

значение EAN DATA(7 Bytes)


00H Default
01H F1F2 CCCCC XCD XXXX CD 0
02H 0 F2 CCCCCC XCD XXXX CD
03H F1F2 CCCCC 0 XXXX CD 0
04H F1F2 CCCCCC XXXX CD 0
05H F1F2 CCCCC XXXXX CD 0
06H 0 F2 CCCCCC XXXXX CD
07H 0 F2 CCCCC XXXXXX CD
08H F1F2 CCCCCCCCCC CD 0
09H F1F2 CCCC XXXXXX CD 0
0AH F1F2 CCCCC CD 000000
0BH 0 F2 CC XXXX CD 00000
0CH NON BARCODE
0DH F1 0 CCCCC XCD XXXX CD 0
0EH F1 0 CCCCCC XXXX CD 0
0FH F1F2 CCCC XCD XXXXX CD 0
10H 0 F2 CCCCC XCD XXXXX CD
11H F1F2 CCC XXXXXXX CD 0
12H F1F2 CC XXXXXXXX CD 0
13H PLU NO., WEIGHT, TTL PRICE
14H NON BARCODE
15H F1F2 CCCCC PCD XXXX CD 0

С – код артикула, X – вес или цена, F1F2 – префикс баркода.

Barcode Weight Prefix=значение


Если используется этот параметр, для весовых артикулов будет использовано его значение, а не
значение параметра Barcode Prefix.
Выбирается два первых символа (префикс) баркода. Если значение не указано или данный
параметр отсутствует, то используется 25.

Barcode Weight Type=значение


Если используется этот параметр, для весовых артикулов будет использовано его значение, а не
значение параметра Barcode Type.
Выбирается тип баркода. Если значение не указано или данный параметр отсутствует, то
используется 5. Если необходимо использовать 6 символов в номере артикула, то рекомендуется
использовать тип 4.

Shop Name=строковое значение


Выбирается название магазина (умолчание отсутствует)

Shop Font=значение
Выбирается тип шрифта для названия магазина (умолчание 5)

№ Название шрифта Значение для Shop Font Размеры шрифта


1 S1 0 5x7
2 S2 1 6 x 10
3 S3 2 7 x 12
4 S4 3 7 x 16
5 S5 4 9 x 22
6 M1 5 10 x 14
7 M2 6 12 x 20
8 M3 7 14 x 24

2002
Датекс Украина
9 M4 8 18 x 32
10 M5 9 18 x 44

Time Print=значение
Если значение = 1, то на этикетке печатается время печати этикетки, если 0, то не печатается.
Умолчание – 0.

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

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

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

CodePage={Win|Dos|OEM}
Весы SM300 (SM100) могут поддерживать различные кодовые страницы для поддержки
кодировки символьных наименований (названия артикулов и название магазина). Приложение
SM300Con обеспечивает поддержку двух основных кодовых страниц (MS Dos и Windows).
Данные во входном файле для приложения (txt) всегда должны поступать в формате Windows. С
помощью параметра CodePage приложение определяет надо ли ему конвертировать данные в
другой формат (MS Dos) перед посылкой их в весы. По умолчанию, данные всегда
конвертируются в формат MS Dos, но при указании значения параметра Win, конвертация не
проводится и данные посылаются в формате кодовой страницы Windows. Кроме двух
вышеуказанных значений ключа можно использовать значение OEM, которое позволяет детальное
указание способа перекодировки (см. параметр PageDetail).
Пример: CodePage=Win
Для того, чтобы определить (задать) необходимость конвертации данных смотрите описание весов
(прежде всего настройки спецификаций весов).

No Type={1|0}
Если все программируемые артикулы являются весовыми, то можно в строках файла txt вообще
опускать поле указания типа артикула (весовой или штучный) и соответствующий разделитель.
Для этого надо указать: No Type=1 (или любое другое не равное нулю значение параметра).
Если значение параметра No Type указано как равное нулю (No Type=0) или вообще отсутствует в
файле ini, то это означает, что поле типа артикула должно обязательно указываться в файле
программируемых артикулов.

PageDetail= имя файла


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

2002
Датекс Украина
которую будут принимать весы при программировании данного символа. Все значения не
указанные в этой таблице остаются в кодировке Windows. Следует заметить, что перекодировка
используется только при программировании имени магазина и названия товара. В остальных
случаях перекодировка не используется.

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

Пример ini-файла:

[PARAMS]
Label Format=17
Barcode Type=4
Time Print=1
Barcode Prefix=22
Shop Name=Магазин Промышленных товаров №51
PLUTotal=plu.txt
Transact=tran.txt

6. Запуск и выполнение программы

После подготовки файла sm300con.txt можно загрузить информацию в весы с помощью


приложения sm300con.exe.

Форматы командной строки:

Формат с разделителем по умолчанию:

sm300con.exe XXX
Разделителем по умолчанию в файле sm300con.txt является знак табуляции.
XXX – три младших цифры идентификатора IP-адреса кассы. Например, если в файле Hosts
имеется следующая запись: 192.168.0.20 S0020,
то вместо XXX укажите 020 - sm300con.exe 020

Формат с указателем знака разделителя:

sm300con.exe XXX <тип.раз.>


XXX – три младших цифры идентификатора IP-адреса кассы.
<тип.раз.> - число от 1 до 4
1 - в качестве разделителя используется запятая (,).
2 - в качестве разделителя используется точка с запятой (;).
3 - в качестве разделителя используется #
4 - в качестве разделителя используется точка (.).

Пример использования:

sm300con.exe 020 2

в этом примере будет загружено содержимое файла sm300con.txt в весы с сетевым логическим
идентификатором S0020 и в качестве разделителя между полями в этом файле используется точка
с запятой.

2002
Датекс Украина

Формат для снятия отчетов с разделителем по умолчанию


sm300con.exe XXX -Report

пример - sm300con.exe 100 -Report


Будут сняты отчеты с весов S0100 и в качестве разделителя между полями будет использована
табуляция.

Формат для снятия отчетов с указателем знака разделителя:


sm300con.exe XXX <тип.раз.> -Report
XXX – три младших цифры идентификатора IP-адреса кассы.
<тип.раз.> - число от 1 до 4
1 - в качестве разделителя используется запятая (,).
2 - в качестве разделителя используется точка с запятой (;).
3 - в качестве разделителя используется #
4 - в качестве разделителя используется точка (.).

Примечания.
1. Перед снятием отчета необходимо выключить и вновь включить весы для которых создается
отчет.
2. Повторное снятие отчета невозможно – отчет является обнуляющим для весов.
3. Не допускается одновременное использование ключей –Report и –Transact в одной командной
строке.

Форматы файлов отчетов.

PLUTotal – каждая строка файла это информация об артикуле. Поля в строке отделяются
разделителями и следовательно такой файл может легко загружен в Excel. В качестве единиц
измерения в отчетах используются – штуки, копейки, граммы (то есть десятичные точки/запятые в
файлах-отчетах не используются).
Формат PLUTotal:
1. Номер артикула
2. EAN код (опционально)
3. Код товарной группы
TOTAL DAILY
4. Стоимость товара
5. Планируемая стоимость товара
6. Количество (штуки для невесового товара + количество этикеток для весового)
7. Вес для весового товара или 0 для невесового
8. Общая прибыль (опционально)
TOTAL TERM
пункты 4-8
TOTAL PREPACK - DAILY
пункты 4-8
TOTAL PREPACK - TERM
пункты 4-8
TOTAL DISCOUNT
пункты 4-8
29. Дата

MGTotal – каждая строка файла это информация о товарной группе. Поля в строке отделяются
разделителями и следовательно такой файл может легко загружен в Excel. В качестве единиц
измерения в отчетах используются – штуки, копейки, граммы (то есть десятичные точки/запятые в
файлах-отчетах не используются).
Формат MGTotal:

2002
Датекс Украина
1. Номер группы
2. Номер отдела
TOTAL DAILY
3. Количество этикеток
4. Количество (штуки для невесового товара + количество этикеток для весового)
5. Стоимость товара
6. Планируемая стоимость товара
7. Вес для весового товара или 0 для невесового
8. Скидки
9. Количество возвратов
10. Возвраты
11. Прибыль
TOTAL TERM
пункты 3-10
21. Дата

Формат для снятия текущих транзакций с разделителем по умолчанию


sm300con.exe XXX -Transact

пример - sm300con.exe 100 -Transact


Будут сняты текущие транзакции с весов S0100 и в качестве разделителя между полями будет
использована табуляция.

Формат для снятия текущих транзакций с указателем знака разделителя:


sm300con.exe XXX <тип.раз.> -Transact
XXX – три младших цифры идентификатора IP-адреса кассы.
<тип.раз.> - число от 1 до 4
1 - в качестве разделителя используется запятая (,).
2 - в качестве разделителя используется точка с запятой (;).
3 - в качестве разделителя используется #
4 - в качестве разделителя используется точка (.).

Примечания.
1. Для работы с параметром -Transact необходимо предварительно установить спецификацию
весов номер 228 в 1. В противном случае файл транзакций формироваться не будет.
2. Повторное снятие текущих транзакций невозможно – снятие транзакции является обнуляющим
для весов.
3. Для работы с транзакциями надо осуществлять чтения транзакций достаточно часто (ок. 1 раз
мин.), в противном случае может проходить потеря информации о некоторых транзакциях из-за
переполнения буфера транзакций.
4. Не допускается одновременное использование параметров –Report, -RTBuffer и –Transact в
одной командной строке.
5. При работе с файлом транзакций рекомендуется снятие отчетов (параметр -Report) только в
конце дня.
6. Параметр –Transact работает как в ручном так и в автоматическом режиме взвешивания.

Форматы файла транзакций.

Transact – каждая строка файла это информация об отдельной транзакции на весах. Под
транзакцией понимается взвешивание товара с печатью этикетки либо печать этикетки невесового
товара. Поля в строке отделяются разделителями и следовательно такой файл может легко
загружен в Excel. В качестве единиц измерения в отчетах используются – штуки, копейки, граммы
(то есть десятичные точки/запятые в файлах-транзакциях не используются).
Формат:
1. Номер транзакции (транзакции нумеруются сквозной последовательной нумерацией)

2002
Датекс Украина
2. Номер артикула в транзакции
3. Цена единицы товара (в копейках)
4. Вес товара в граммах (либо ноль для штучного товара)
5. Количество штучного товара в транзакции (либо единица для весового товара)
6. Количество (штуки для невесового товара + количество этикеток для весового)
7. Общая стоимость товара
8. Дата проведения транзакции
9. Время проведения транзакции

Формат для снятия отчетов о транзакциях реального времени


sm300con.exe XXX -RTBuffer

пример - sm300con.exe 100 -RTBuffer


Будут сняты транзакции реального времени с весов S0100 и в качестве разделителя между полями
будет использована табуляция.

Формат для снятия отчета транзакций реального времени с указателем знака разделителя:
sm300con.exe XXX <тип.раз.> -RTBuffer
XXX – три младших цифры идентификатора IP-адреса кассы.
<тип.раз.> - число от 1 до 4
1 - в качестве разделителя используется запятая (,).
2 - в качестве разделителя используется точка с запятой (;).
3 - в качестве разделителя используется #
4 - в качестве разделителя используется точка (.).

Примечания.
1. Для работы с параметром -RTBuffer необходимо предварительно установить спецификации
весов номер 277 в 1, 228 в 1, 281 в 0, 346 в 3. Печать этикетки должна осуществляться клавишей
оператора. Для этого необходимо установить: SPEC 19 = 2. В противном случае отчет транзакций
реального времени формироваться не будет.
2. Для работы с транзакциями реального времени надо осуществлять чтения транзакций, в
противном случае может проходить потеря информации о некоторых транзакцииях из-за
переполнения буфера транзакций.
3. Не допускается одновременное использование параметров –Report, –Transact и -RTBuffer в
одной командной строке и в любой совместной комбинации.
4. При работе с файлом транзакций реального времени рекомендуется снятие отчетов (параметр -
Report) только в конце дня.

Форматы файла транзакций реального времени.

Каждая строка файла это информация об отдельной транзакции реального времени на весах. Под
транзакцией понимается взвешивание товара с печатью этикетки либо печать этикетки невесового
товара. Поля в строке отделяются разделителями и следовательно такой файл может легко
загружен в Excel. В качестве единиц измерения в отчетах используются – штуки, копейки, граммы
(то есть десятичные точки/запятые в файлах-транзакциях не используются).
Формат:
1. Номер транзакции (транзакции нумеруются сквозной последовательной нумерацией)
2. Номер артикула
3. Количество
4. Вес товара в граммах
5. Цена единицы товара (в копейках)
6. Общая стоимость товара
7. Номер весов (Оператора?)
8. Вес тары
9. Последний байт IP-адреса (идентификатор весов)

2002
Датекс Украина
10. Код оператора
11.Время и дата получения транзакции.

7. Дополнительная информация

При возникновении вопросов, предложений, обнаружении ошибок в программе обращайтесь по


адресу avv@systema.kiev.ua.

2002