14.11.2012 17:41
Pyatak
 
Вот, написанный мной когда-то драйвер для загрузки весов с двухстрочной прошивкой. Полностью на Delphi без использования каких либо внешних библиотек или компонентов. Он не самый скоростной, но работает у нас уже 4 года.
Описания нет, кратко:
MT_Init() вызываешь в начале программы,
MT_Connect() для подключения к весам, возвращаемое значение этой функции используй в остальных функциях. Если подключиться не удалось, результат будет равен MT_ERROR.
После соединения можно:
MT_SendDateTime()
MT_SendBarcodeFormat()
MT_SendShopName()
MT_SendRunningString()
названия функций говорят сами за себя.
Самое главное:
MT_SendPLU2() отправка информации о товаре, вернёт true, если получилось и false, если нет.
Не забудьте MT_Disconnect()
и MT_End() перед завершением программы

Условие использования: Выложить сюда все модификации и доработки данного драйвера, если таковые будут иметь место.
Вложения
Тип файла: rar MTTigerDrv.rar (4.4 Кб, 423 просмотров)
10.04.2013 10:41
Pyatak
 
Хочу обратить внимание, что в драйвере был обнаружен маленький недочет. Перед работой с сокетами в Windows нужно вызвать функцию WSAStartup(), а по окончании работы WSACleanup(). Можно вставить вызов этих функций в MT_Init() и в MT_End(), если вы не вызываете их в другом месте вашей программы.
21.05.2013 10:41
Pendelyator
 
Pyatak, случаем не осталось описания протокола?
Мне удалось найти некоторое описание, однако, оно не включает интересующую меня структуру команды на загрузку этикетки.
04.09.2013 13:44
commanderz
 
Выкладываю как просил автор топика - доработанную версию его драйвера.

Папка: AddIn_Example02_02.pas
Компилировал EXE(my_test_proj.dpr) и DLL(AddIn_Example02_02.dpr) на Delphi 7 - успешно работает.
На Delphi XE2 откомпилировалось но не заработало, наверно нужно отключать unicode, или провести ревизию кода на предмет того что строки и символы стали юникодными.
-----------------------------------------------------------------
  • MTTigerDrv.pas - скачанный у вас и модифицырованный мной драйвер весов Mettler Toledo Tiger
  • my_test_proj.exe - тестирование драйвера MTTigerDrv.pas, умеет отправлять в весы: время, название магазина. Отправлять и принимать: товары с ценами, дополнительный текст с продолжениями.
  • AddIn_Example02_02.dll - Внешняя компонента AddIn_Example02 для системы 1С:Предприятие 8.2, используется здесь:
  • ВыгрузкаДанныхНаВесы.epf - пример 1С модуля для выгрузки на весы (используется Процедура ЗаписатьТоварНаВесыMettlerToledoByNikolas(АдресВСети, ТоварыДляВесов) /надеюсь разберетесь)
------------------------------------------------------------------

Признателен автору за столь неплохой подарок, и рад возможности помочь в ответ.
С вопросами можно писать мне сюда
Вложения
Тип файла: rar AddIn_Example02_02_pas_release_v1_00.rar (564.2 Кб, 367 просмотров)
24.04.2014 22:44
Pyatak
 
Цитата:
commanderz Признателен автору за столь неплохой подарок
Там кнопочка в сообщении специальная есть для выражения признательности)))
А если по существу, то описали бы в паре слов, что именно доработано.
28.09.2016 11:16
Netsky
 
Pyatak, данная версия для отправки данных на двухстрочные весы, не мог бы ты подсказать, что необходимо подкорректировать для отправки данных( интересует именно прогрузка справочника товаров) на однострочные весы? Весь код вроде как уже перекопал, не хватает навыков и знаний, по логике понял только что нет значения в переменной Name2, его закомментил, и массив для Name1 будет состоять только из 28 символов, все это учел, но в итоге нужного результата не достиг..(
30.09.2016 08:53
Netsky
 
Если вдруг кому будет нужно, вот описание строки для однострочных весов:
TMTCmdPLU = record
PHead: TMTPacketHeader;
CHead: TMTCmdHeader;
PLU: dword;
BarCode: array[1..13] of char;
Name1: array[1..28] of char;
c: char;
Price: dword;
TaxNo: byte;
TareNo: byte;
Nothing: array[1..2] of char;
FixWeight: dword;
GroupNo: word;
Flags: word;
ShelfLife:word;
SellBy: word;
MsgNo: word;
CRC: word;
20.08.2017 19:18
Frigat
 
Цитата:
commanderz Выкладываю как просил автор топика - доработанную версию его драйвера.
[*]my_test_proj.exe - тестирование драйвера MTTigerDrv.pas, умеет отправлять в весы: время, название магазина. Отправлять и принимать: товары с ценами, дополнительный текст с продолжениями.

С вопросами можно писать мне сюда
Добрый день. Пишу с надеждой, что автор еще на форуме )
my_test_proj.exe - крашится при запуске на windows 7
При попытке скомпилировать еще из исходников жалуется на отсутствие DB.dcu:
[Fatal Error] AddInDoc.pas(9): File not found: 'Db.dcu'

Что можно попробовать сделать?
19.10.2017 22:11
neALEX
 
commanderz, Pyatak, Добрый вечер! Пытаемся передать на весы информацию по ингридиентам (в нескольких блоках), не все получается. Где Вы брали информацию по описанию протокола обмена с весами?
Часовой пояс GMT +3, время: 03:46.

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