Для получения веса товара с торговых весов используется скрипт c обратной связью через файл «scout.txt». Пример содержания файла «scout.txt». с успешным выполнением:
-----------------------------------------------
0=OK!
0.250
------------------------------------------------
Результат взвешивания товара, 250 гр.
Любое другое сообщение будет игнорироваться с возвратом количества, равного 0. Если CashFront в течении 1 секунды не получит ответ, он принудительно закроет выполнение скрипта.
Пример файла скрипта:
'-------------------------------------------------
Dim Output ' - текст результа работы
'запись результатов в файл
Sub CreateFile(FileName)
Dim fso, tf
Set fso = CreateObject("Scripting.FileSystemObject")
Set tf = fso.CreateTextFile(FileName, True)
tf.Write (Output)
tf.Close
End Sub
'процедура входа в скрипт
Sub Main()
'командная строка выглядит примерно так
'wscript.exe com speed
Dim PathScript ' - рабочая директория
dim com ' - номер порта
dim speed ' - скорость
dim S ' - OLE объект
Output ="ERROR!"
'получим аргументы командной строки
com = Cbyte(WScript.Arguments(0))
speed = Cint(WScript.Arguments(1))
'опредилим рабочий каталог
PathScript = Left(WScript.ScriptFullName,InStr(WScript.ScriptFullName, WScript.ScriptName)-1)
Set S = CreateObject("DS788.DS788Scale")
S.Com = com
S.Active = True
If Not S.ScaleError Then
Output ="0=OK!" & VbNewLine & S.GetScaleData()
End if
S.Active=False
CreateFile(PathScript & "scout.txt")
'убиваем OLE
Set S = Nothing
End Sub
'точка входа
Call Main
'-------------------------------------------------
Этот скрипт использует OLE- объект «DS788.DS788Scale» находящийся в библиотеке DS788.DLL, для начала работы с этой библиотекой ее необходимо предварительно зарегистрировать командой regsvr32.