13.02.2014 12:17
Krokogen
 
Приветствую.
Кто сталкивался с программированием этой таблицы? Как именно надо передать структуру COVO?
Пытался подобрать исходя из данных вводимых в Pr210, но весы упрямо отвечают: DatabaseError.
13.02.2014 15:47
grannie
 
Что-то у меня подозрение, что при DatabaseError это не ошибка в содержимом поля (там простая текстовая строка, к-рая, по идее, не должна давать такой ошибки сама по себе), а ошибочный синтаксис команды в целом. Можете привести строку, которая в весы уходит? Желательно копипастом или скриншотом из лога, чтобы исключить ошибки перепечатывания.
13.02.2014 16:12
Krokogen
 
Согласен, логично... Но тогда не понимаю что делаю не так.
Команда такая:

0000 43 4f 53 54 20 20 1b 53 30 30 1b 57 41 4c 4f 30 COST .S00.WALO0
0010 1b 43 4f 53 4e 32 38 1b 43 56 41 4b 31 1b 43 4f .COSN28.CVAK1.CO
0020 56 4f 32 38 30 35 30 35 30 30 32 30 35 30 1b 42 VO280505002050.B
0030 4c 4b 20 1b LK .
13.02.2014 16:19
Krokogen
 
Скрин:


Ответ текстом без терминаторов:
COST s00QUIT2119ELEV20ETEXDatabase ErrorBLK 0
13.02.2014 17:05
grannie
 
Я как-то экспериментировал с самописной (не мною, Сашей Я-ским) софтинкой Bizerba Exchange. В т.ч. у меня получалось и COST корректно прогрузить. Посмотрите в архивчике:
https://storage.olegon.ru/supermag/Ж...rbaExchange.7z
Сделайте по аналогии. Сразу скажу: формат поля COVO откуда взял - уже не помню
13.02.2014 18:09
Krokogen
 
Спасибо.. Формат волшебный....
COVO0001{300001000200000000}0002{24}0005{0034}0003{00140000}
Пока разобрал:
COVO0001{300001000
2 // 2– обычный ШК; 3– удлинённый ШК
00000000}
0002{24} // это префикс, тут понятно
0005{0034} // код товара. 5 знаков
0003{00140000} // вес. 5 знаков, 3 после зпт.

Осталось ерунда... Понять как сделать 6 знаков на товар и 4 для веса. Цифры со здравым смыслом никак не коррелируют :) Что бы не поменял - DatabaseError. :)
Буду сидеть дальше
13.02.2014 18:57
grannie
 
Не забудьте результатами поделиться
14.02.2014 10:55
Krokogen
 
Мдя... Это жесть какая то.. Но вроде разобрался в пределах данных типов данных.

string code = "0005{0034}"; // 5 символов кода (с подстроки плу)
string code = "0005{0033}"; // 6 символов кода (с подстроки плу)
string code = "0005{0035}"; // 4 символов кода (с подстроки плу)
string weight = "0003{0014}"; // 5 символов веса, 3 после зпт
string weight = "0003{0013}"; // 6 символов веса, 3 после зпт
string weight = "0003{0015}"; // 3 символов веса, 3 после зпт

Структуры можно перетасовывать, повторять, главное чтобы 12 символов было в итоге, что логично.

Мне достаточно для своих задач, дальше копать не буду.
Большое спасибо, очень помогли. Тыкнуть в плюсик не могу, наверное я не заслужил еще :)
14.02.2014 11:04
Mtirt
 
Ткните в [спасибо автору]. Для этого вам кармы хватит.
04.04.2014 15:03
Krokogen
 
Поправка. Выше мною даденный пример работает только на новых BC2.
Для старых BS информацию по весу надо давать с количеством символов после запятой.
weight = "0003{00130004}"; // 6 символов веса, 3 после зпт
weight = "0003{00140004}"; // 5 символов веса, 3 после зпт
weight = "0003{00150004}"; // 4 символа веса, 3 после зпт
Часовой пояс GMT +3, время: 17:52.

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