‘ункции дл€ работы с транспортным модулем (”“ћ) ≈√ј»— + готова€ конфигураци€ дл€ ≈√ј»—

0. “ехподдержка 26.10.15 19:52
ѕредлагаю вашему вниманию функции дл€ использовани€ в цел€х обмена данными с универсальным транспортным модулем ≈√ј»—. ѕри доработке учетной системы с целью интеграции с транспортным модулем ≈√ј»—, € столкнулс€ с серьезной проблемой, св€занной с тем, что внешн€€ компонента V7Plus, предназначенна€ дл€ работы по протоколу HTTP, а также дл€ разбора XML-файлов, поддерживает только команду GET протокола HTTP, в то врем€ как дл€ работы с ”“ћ требуетс€ поддержка команд GET, POST и DELETE.
P.S. ќбновлены все функции и обработки дл€ поддержки XML-ответов больше 100 б (теперь длина неограничена). “акже добавлена обработка выгрузки расходной накладной. ƒобавлена загрузка приходной накладной, а также диапазона марок из справки ј.
¬нимание! добавлена полностью готова€ к работе конфигураци€ дл€ работы в ≈√ј»— оптовых поставщиков. –еализованы следующие функции: автоматическа€ загрузка накладных и доп. форм из ≈√ј»—, отправка актов подтверждени€/отклонени€/расхождени€, загрузка справок ј и Ѕ, загрузка сведений о поставщике/производителе, загрузка справочников номенклатуры по »ЌЌ производител€, постановка на баланс учтенного/не учтенного в ≈√ј»— товара, штрихкодирование поступлени€/инвентаризации/реализации/постановки на учет (DataMatrix и PDF417), формирование партий на складе а также электронна€ выгрузка деклараций по формам 5,6,7,11,12.
¬ дальнейшем могу оказывать сопровождение

ѕерейти к публикации

¬ознаграждение за ответ
ѕоказать полностью
 омментарии
¬ избранное ѕодписатьс€ на ответы —ортировка: ƒрево развЄрнутое
—вернуть все
1. —ергей  51 27.10.15 09:23 —ейчас в теме
—пасибо за пример!
¬опрос однако, в функции
function sendclientinfoquery(inn) export
    ...<qp:Name>»ЌЌ</qp:Name>...

есть атрибут названный по русски "»ЌЌ". Ќе увидел преобразовани€ кодировки текста в UTF-8 ?
 ажетс€ что по умолчанию кодировка строковой переменной будет Windows...
3. “ехподдержка 27.10.15 10:03
(1) —ергей , ¬се правильно, кодировка устанавливаетс€ здесь:

objxml.Setrequestheader("Accept-Charset", "utf-8");

» к сведению, все строки, которые передаютс€ в объекты OLE Automation, имеют кодировку Unicode, никак не ANSI.
2. volk13 27.10.15 09:59 —ейчас в теме
4. ivanov_alex 48 27.10.15 14:50 —ейчас в теме
Ѕыл бы рабочий код дл€ отправки ““Ќ дл€ розницы, может и купил бы
5. “ехподдержка 27.10.15 14:53
(4) ivanov_alex, не проблема, сейчас как раз работаю над отправкой ““Ќ, отправкой акта подтверждени€/отказа/расхождени€ поставщику, а также загрузкой справок формы A и B. ѕишите в личку, что ¬ам надо, договоримс€:)
9. aximo 1699 31.10.15 18:41 —ейчас в теме
(5) а зачем мы хотите получать справки ј и Ѕ?
–азве в первичных документах WAYBILL и REGB... не достаточно информации?

ѕочему не используете  ”–Ћ? - это должно упростить разработку системы обмена....
(9) aximo, 1. REGB - это и есть справка Ѕ
2. “ребуетс€ установка Curl, требуетс€ формирование файла на диске, неудобно и избыточно, дл€ работы моего кода не требуетс€ установка дополнительных компонентов.
6. “ехподдержка 27.10.15 14:57
 стати, заметил, что в тексте публикации не все функции, которые используютс€ в обработках. ≈сли кто-то уже скачал, извин€юсь за свой промах. ¬ечером выложу здесь файл с текстом глобального модул€ в части, касающейс€ ≈√ј»—.
7. Yury1001 1449 28.10.15 11:13 —ейчас в теме
(6) а так же не описаны изменени€ в метаданных))
8. “ехподдержка 28.10.15 13:01
(7) Yury1001, ƒобавлена строкова€ константа FSRAR_ID дл€ установки идентификатора торговой точки, добавлено перечисление QueryType со значени€ми:

ForManufacturerInfo
ForProductsInfo

и добавлен справочник дл€ хранени€ запросов queryegais следующей структуры:
 од - (нет)
Ќаименование - строка(42)
QueryType - ѕеречисление.QueryType
Status - „исло(1)
inn - строка(20)

¬от и все изменени€!
11. rougudz 06.11.15 11:00 —ейчас в теме
чегойто никак не хочет работать ваш вариант :(

–Ш–Э–Э это »ЌЌ в UTF кодировке
при objxml.send(dataforsend);
выдает ошибку: ќшибка отправки запроса POST: msxml3.dll: —интаксическа€ ошибка

привожу dataforsend
--qqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
Content-Disposition: form-data; name="xml_file"; filename="client.xml"
Content-Type: text/xml; charset=utf-8


<?xml version="1.0" encoding="UTF-8"?>
<ns:Documents Version="1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ns="http://fsrar.ru/WEGAIS/WB_DOC_SINGLE_01"
xmlns:oref="http://fsrar.ru/WEGAIS/ClientRef"
xmlns:qp="http://fsrar.ru/WEGAIS/QueryParameters">
<ns:Owner>
<ns:FSRAR_ID>030000050000</ns:FSRAR_ID>
</ns:Owner>
<ns:Document> (5.1)
<ns:QueryClients>
<qp:Parameters>
<qp:Parameter>
<qp:Name>–Ш–Э–Э</qp:Name>
<qp:Value>7729101200</qp:Value>
</qp:Parameter>
</qp:Parameters>
</ns:QueryClients>
</ns:Document>
</ns:Documents>
--qqqqqqqqqqqqqqqqqqqqqqqqqqqqqq--
ѕоказать
(11) rougudz, ≈ще раз говорю, ничего перекодировать не надо! ѕерекодировка производитс€ здесь:
objxml.Setrequestheader("Accept-Charset", "utf-8");

¬ dataforsend ƒолжно быть »ЌЌ, а не –Ш–Э–Э
13. rougudz 06.11.15 11:13 —ейчас в теме
€ пробовал и так и так. ничего не мен€етс€ :(
ќшибка отправки запроса POST: msxml3.dll: —интаксическа€ ошибка
(13) rougudz, ” ¬ас ошибка в XML-файле запроса, он у ¬ас неправильно сформирован. ¬озьмите мой вариант за основу, у мен€ все правильно сформировано. Ќапример, что это за строка:
<ns:Document> (5.1)
Ёто точно не мой код. » делимитер дл€ формы у мен€ формируетс€ из случайных символов. Ёто не € писал.
15. rougudz 06.11.15 11:26 —ейчас в теме
сперва € пробовал ваш вариант, потом вариант из pdf ≈√ј»—опт, 5.1 это от туда случайно влезло после копипаста.

вот ваш вариант, таже песн€:
--qqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
Content-Disposition: form-data; name="xml_file"; filename="client.xml"
Content-Type: text/xml; charset=utf-8

<?xml version="1.0" encoding="utf-8"?>
<ns:Documents Version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ns="http://fsrar.ru/WEGAIS/WB_DOC_SINGLE_01"
xmlns:qp="http://fsrar.ru/WEGAIS/QueryParameters">
<ns:Owner><ns:FSRAR_ID>030000050400</ns:FSRAR_ID></ns:Owner>
<ns:Document><ns:QueryAP><qp:Parameters><qp:Parameter><qp:Name>»ЌЌ</qp:Name>
<qp:Value>7729101200</qp:Value></qp:Parameter></qp:Parameters></ns:QueryAP>
</ns:Document></ns:Documents>
--qqqqqqqqqqqqqqqqqqqqqqqqqqqqqq--
ќшибка отправки запроса POST: msxml3.dll: —интаксическа€ ошибка
ѕоказать
(15) rougudz, ну какой же мой? ј откуда --qqqqqqqqqqqqqqqqqqqqqqqqqqqqq ????
17. rougudz 06.11.15 11:33 —ейчас в теме
(16)
на моей машине почету-то так отрабатывает getrandomstring
это € еще не разбиралс€.
своего € тут ничего не выдумывал, пробую ваше.
вот никак немогу пон€ть в чем ошибка в запросе :(
(17) rougudz, ” мен€ почему то есть, а у ¬ас само-собой пропало? »спользуйте мой код, в нем все работает, если вносите свои изменени€, зачем ко мне претензии?
23. rougudz 06.11.15 11:49 —ейчас в теме
(19) Ќ» ј »’ претензий! боже упаси, сорри если мои слова восприн€лись как претензии.
если посмотреть выше на список процедур («апрос номенклатурного справочника производител€) то там нет такой строки "xmlns:oref="http://fsrar.ru/WEGAIS/ClientRef""
вот потому у мен€ ее и нету :)
а использую € ваш код это однозначно, все правки которые € делал в начале € убрал.
единственно пришлось таки помен€ть адрес на /opt/in/QueryPartner
потому что он видимо изменилс€ со дн€ публикации...

добавил эту строку...
итоговый код запроса, а ошибка таже..
--PPPPKKKKKKKKKKKMMMMMMMMMM88888
Content-Disposition: form-data; name="xml_file"; filename="client.xml"
Content-Type: text/xml; charset=utf-8

<?xml version="1.0" encoding="utf-8"?>
<ns:Documents Version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ns="http://fsrar.ru/WEGAIS/WB_DOC_SINGLE_01"
xmlns:oref="http://fsrar.ru/WEGAIS/ClientRef"
xmlns:qp="http://fsrar.ru/WEGAIS/QueryParameters">
<ns:Owner><ns:FSRAR_ID>030000050400</ns:FSRAR_ID></ns:Owner>
<ns:Document><ns:QueryAP><qp:Parameters><qp:Parameter><qp:Name>»ЌЌ</qp:Name>
<qp:Value>7729101200</qp:Value></qp:Parameter></qp:Parameters></ns:QueryAP>
</ns:Document></ns:Documents>
--PPPPKKKKKKKKKKKMMMMMMMMMM88888--
ќшибка отправки запроса POST: msxml3.dll: —интаксическа€ ошибка
ѕоказать

спасибо за ответы. у мен€ этот вариант не работает, буду пробовать чтото другое.
(17) rougudz, ѕрошу прощени€, уже вижу, что запрос формировалс€ по продукции, не заметил сразу, этой строки и не должно быть в запросе. «начит еще где-то ошибка.
(17) rougudz, getrandomstring не отрабатывает, потому что в функцию "ѕриЌачале–аботы—истемы" надо добавить:
	somedigit = _getperformancecounter()*_getperformancecounter();
(17) rougudz, ¬ ¬ашем варианте в HTTP-заголовке дл€ POST нет об€зательных полей:
Content-Length
Content-Type (об€зательно указывать поле boundary)

¬озьмите мой код целиком, и все заработает! —качайте функции глобального модул€, и вставьте в свой глобальный модуль, ничего не мен€€ в низкоуровневых функци€х.
(15) rougudz, √де у ¬ас в файле вот это: xmlns:oref="http://fsrar.ru/WEGAIS/ClientRef" ?
ƒл€ какой платформы и конфигурации пытаетесь адаптировать?
25. rougudz 06.11.15 11:59 —ейчас в теме
€ приводил пример того что передаетс€ в objxml.send(dataforsend); т.е. саму строку в dataforsend

все остальное передаетс€
objxml.setrequestheader("Content-Type", "multipart/form-data; boundary=" + boundary);
    objxml.setrequestheader("Content-Length", string(—трƒлина(querydata)));

и т.д.
ваша процедура, единственное помен€л команды на руские вариенты, мне так проще, привычнее, суть не помен€лась
‘ункци€ sendpostquery(objxml, querydata, address) export
    boundary = ѕолучить—тр—луч—имволов(30);
    objxml.open("POST", UTM_SERVER + address, 0);
    objxml.setrequestheader("Content-Type", "multipart/form-data; boundary=" + boundary);
    objxml.setrequestheader("Content-Length", string(—трƒлина(querydata)));
    objxml.setrequestheader("≈сли-Mod≈слиied-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
    objxml.setrequestheader("Pragma", "no-cache");
    objxml.setrequestheader("Cache-Control", "no-cache");
    objxml.setrequestheader("Accept-Charset", "utf-8");

    dataforsend = "--" + boundary + –азделитель—трок +
            "Content-Disposition: form-data; name=""xml_file""; filename=""client.xml""" + –азделитель—трок +
            "Content-Type: text/xml; charset=utf-8" + –азделитель—трок + –азделитель—трок + querydata +
            –азделитель—трок + "--" + boundary + "--";
    
	
	
	ѕопытка 
        objxml.send(dataforsend);
        resultstr = objxml.responsetext;
	»сключение
		—ообщить(dataforsend);		
        message("ќшибка отправки запроса POST: "+сокрлп(описаниеошибки()),"!");        
        resultstr = "";
     онецѕопытки;
    ¬озврат resultstr;
 онец‘ункции
ѕоказать


€ приводил текст dataforsend
(25) rougudz, „ет вообще ничего непон€тно, какой-то мусор в ¬ашем коде
26. rougudz 06.11.15 12:02 —ейчас в теме
спасибо. попробую когда разбогатею :)
у мен€ 0,98 на счете :)
и € собственно юзал процедуры из публикации а не вложенных файлов.
(26) rougudz, давайте ¬ашу почту в личке, € скину
29. dm1860 11.11.15 17:06 —ейчас в теме
ѕрикрутил функции... работают.
Ќо по некоторым производител€м при попытке забрать ответ на запрос с их продукцией, 1—-ина вылетает и при этом сохран€етс€ пустой файл *.qry в папке  аталог»Ѕ\queries\ Ќе знаете из-за чего это может быть?
(29) dm1860, увы, уже знаю. 1— вылетает при попытке передать/считать строку в COM-объект больше приблизительно 100  б, а также при работе со строками неограниченной длины в базе больше 100 б. ¬ылетает в крэш. ѕришлось поправить функции, сделать все таки загрузку из файлов, разрезать строку на кусочки по 80 б при сохранении, использовать другой COM-объект дл€ записи/считывани€ данных в кодировке UTF. »справленные функции и модули сейчас выложу.
31. victuan 3970 20.11.15 07:56 —ейчас в теме
(30) ”вы, дл€ большего объема данных подойдет только Curl. ¬от цитата из соседней разработки:
ѕри скачивании файлов >570  б используетс€ cUrl (в настройках можно форсировать использование cUrl на посто€нной основе)
http://infostart.ru/public/409028/
(31) victuan, ничего подобного, € без проблем загружаю файлы 11-12 ћб (справочники продукции) - без вс€кого CURL. ѕросто нужны пр€мые руки:) —качайте глобальный модуль - и убедитесь.
33. ya.vladi.mir 24.11.15 11:37 —ейчас в теме
»горь, можно вопрос по поводу подтверждение акта разногласи€
- мне через ”“ћ пришло два уведомлени€: первое что акт прин€т и второе что накладна€ проведена
а где же подтверждение от поставщика, что он согласен на уменьшение количества согласно акта?
как у вас реализовано?????
спасибо
(33) ya.vladi.mir, ѕо поводу подтверждени€ сам еще не в курсе, нигде не нашел такой информации. 2..12.2015 будет семинар в москве по ≈√ј»—, там надеюсь получить ответ на этот вопрос. ѕока решили просто отклон€ть полностью накладную, и получать переделанную от поставщика.
35. ya.vladi.mir 25.11.15 11:37 —ейчас в теме
(34) да - полностью согласен, решение в данном случае самое верное,
однако хотелось бы правды ))) узнать
37. ya.vladi.mir 26.11.15 08:04 —ейчас в теме
(34) »горь, брось свои координаты мне на ya.vladi.mir@yandex.ru
36. јндрей77RX 25.11.15 23:16 —ейчас в теме
 то занимаетс€ автоматизацией магазинов, подскажите, устанавливали ли ј“ќЋ ”“ћ HUB-19, как он в работе ? http://pos-tech.ru/egais/utm-atol/utm-atol-hub
38. sf002 4 26.11.15 13:36 —ейчас в теме
igorberezhnov, скажите при выгрузке накладной, где выгружаетс€ PDF417 считанный с бутылки или € что-то напутал?
(38) sf002, Ќигде, максимум что ¬ы можете получить - это диапазоны серийных номеров марок, которыми маркирована продукци€ (это маленькие коды DataMatrix) дл€ всей выпущенной партии производител€. —огласно официальной схеме, они должны быть включены в справку ј ≈√ј»—, но по факту ни в одной полученной справке € их не видел. Ќо это код марок, а не штрихкод PDF-417. “ак что придетс€ штрихкодировать каждую бутылку как при получении, так и при отгрузке.
40. sf002 4 28.11.15 10:48 —ейчас в теме
(39) штриховать придетс€ рознице или опту? € так пон€л что оптовик отправл€ет только то что получил в приходной накладной. и идентифицировать бутылку никак нельз€. в табличной части там только рег.номер справки ј + рег.номер справки Ѕ + код ≈√ј»— бутылки + код ≈√ј»— производител€.
это значит штрихкодированием будет заниматьс€ только розница? ведь только они должны печатать спец.чек и отпускать товар по 2-м кодам EAN(свой) и PDF417(с акц.марки). то есть оптовке не нужно ничего штрихкодировать? в справке ј есть диапазоны марок и оптовик по приходу провер€ет на соответствие каждой бутылки - этой справке ј. и также при отгрузке указывает конкретную справку ј и справку Ѕ.
(40) sf002, как в оптовой торговле без кодировани€, как партии товаров различать, которые поступили от производител€/поставщика? »ли держать их на разных полках? ѕредположим, мы от фонар€ отгрузили в розницу бутылку водки из другой партии, при продаже информаци€ о бутылке поступит в ≈√ј»—, а там сведени€, что эта бутылка продана »ѕ ѕупкину. «начит в этом магазине торгуют контрафактом!
44. sf002 4 28.11.15 15:24 —ейчас в теме
(42)
как в оптовой торговле без кодировани€, как партии товаров различать, которые поступили от производител€/поставщика?

можно обклеить €щики текстовой информацией о партии: (номер партии, диапазон марок), затем при отгрузке в розницу - подбирать по этим 2-м параметрам. а номера регистрации справок ј и Ѕ брать из номера партии. конечно если обклеить €щики/бутылки штрихкодами - то все будет быстрее. мен€ просто интересует алгоритм. € верно прикинул?
41. sf002 4 28.11.15 11:06 —ейчас в теме
сам отвечу.
получаетс€ оптовик отправл€ет данные в розницу лишь диапазоном марок (указанный в справке ј) - все как раньше на бумажках
розница отпускает продукцию считанную по PDF417 (наименование, код ≈√ј»—, крепость, емкость, производитель, дата розлива) с точностью до конкретного номера марки считанного с DataMatrix.
зачем тогда об€зательна€ маркировка EAN? или бывают повторени€ в комбинации PDF417+DataMatrix?
(41) sf002,
> зачем тогда об€зательна€ маркировка EAN? или бывают повторени€ в комбинации PDF417+DataMatrix?
“ак в розничных учетных системах нет возможности идентификации товара по алкогольному штрихкоду. ¬о первых, в существующих учетных системах нет информации о коде ≈√ј»— номенклатуры конкретного товара. ¬о вторых, не так то просто извлечь код товара из штрихкода, он там зашифрован в 36-разр€дной системе. ¬ третьих, один и тот же товар разных производителей имеет разный штрих-код, а это неудобно при назначении дисконта или наценки на конкретный товар.
45. sf002 4 28.11.15 15:25 —ейчас в теме
да про розницу пон€л, спасибо за разъ€снени€. там без штрихкодировани€ необойтись.
46. ital 30.11.15 09:26 —ейчас в теме
—качал все ваши обработки,заточил под себ€ все отлично, а вот с обработкой "¬ыгрузка расходной накладной в ≈√ј»—", затык, отладил все ошибки в наших данных, и теперь зашел в тупик при отправке выдает одну и ту же "обезличенную" ошибку.

<A><error>org.xml.sax.SAXParseException; cvc-pattern-valid: Value '' is not facet-valid with respect to pattern '\S+(.*\S+)*' for type 'NoEmptyString50'.</error><ver>2</ver></A>

ј какое именно поле пустое не могу пон€ть уже все пол€ в готовом файлике xml запроса проверил на 10 р€дов + добавил транспортный раздел. “ак же по схеме попыталс€ найти какие пол€ типа "NoEmptyString50" там суд€ по схеме их всего 3 шт это "NUMBER" (номер ““Ќ), "Pack_ID" (упаковка), "Party" (парти€), все эти пол€ еще раз перепроверил, все заполнены. ѕодскажите пожалуйста в каком направлении копать.
(46) ital, Ёто пол€ адреса производител€/поставщика. ≈сли адрес не соответствует требовани€м ћЌ—, в файле выгрузки по€вл€ютс€ пустые пол€ (город, код страны, улица и т.д.), которые должны содержать как минимум один символ, как максимум 50. я дл€ себ€ решил эту проблему тем, что завел в карточке контрагента все дополнительные пол€, как они есть в схеме ≈√ј»— (все части адреса отдельно, плюс поле description, плюс полное и краткое наименование ≈√ј»—).
48. Novicad 2 10.12.15 13:54 —ейчас в теме
ћожешь перезалить свежие варики обработок, и может что то еще наработал тоже выкладывай!? спасибо
(48) Novicad, ƒобавил обработку выгрузки акта постановки на баланс, и обработку штрихкодировани€ прихода по накладной. ¬ыложил готовую и протестированную конфигурацию дл€ платформы 1— 7.7.
50. Palmer1976 179 18.12.15 17:17 —ейчас в теме
‘ункци€ loadxml() объекта Msxml.DOMDocument крэшитс€ при попытке загрузить из строки очень большой длины (к примеру ответ на запрос справочника алкогольной продукции производител€ по его »ЌЌ).  ак вы обошли эту проблему?
(50) Palmer1976, считываю порци€ми по 80 б:
function loadreply(queryid) export
	fso = createobject("Scripting.FileSystemObject");
	reply = "";
	path =  аталог»Ѕ()+"\queries\"+сокрлп(queryid)+".qry";
	if (fso.fileexists(path) <> 0) then
	    txtfile = fso.opentextfile(path, 1);
		пока txtfile.AtEndOfStream=0 цикл
	    	reply = reply + txtfile.read(80000);
		конеццикла;
	    txtfile.close();
	endif;
	return reply;
endfunction
ѕоказать


function loadreply(queryid) export
fso = createobject("Scripting.FileSystemObject");
reply = "";
path =  аталог»Ѕ()+"\queries\"+сокрлп(queryid)+".qry";
if (fso.fileexists(path) <> 0) then
txtfile = fso.opentextfile(path, 1);
пока txtfile.AtEndOfStream=0 цикл
reply = reply + txtfile.read(80000);
конеццикла;
txtfile.close();
endif;
return reply;
endfunction
52. Palmer1976 179 19.12.15 23:05 —ейчас в теме
(51) сами создаете себе трудности, чтобы потом их успешно преодолевать? даю наводку ;) раз уж используете MSXML, то вовсе нет нужды гон€ть данные через текстовую строку туда-сюда responsetext -> loadxml()
когда есть ResponseXML
(52) Palmer1976, я вообще то в курсе, как работает MSXML, учить мен€ не надо. ¬ы спросили, как решить проблему обмена длинными строками в 1— - € вам объ€снил. »ли чего хотели?
(52) Palmer1976, ” мен€ все файлы ответов хран€тс€ на диске, чтобы всегда можно было посмотреть ответ/список ответов в карточке запроса, дл€ последующей обработки. „тобы с диска файлы считывать тоже ResponseXML предлагаете?
55. Stan 33 21.12.15 12:09 —ейчас в теме
≈сть вопросы по конфигурации. Ќаписал в личку.
56. beard1 14.01.16 22:05 —ейчас в теме
ƒоброго времени суток, в конфигурацию вход€т все функции? сканер как подключаем?
сопоставление контрагентов и номенклатуры реализовано?
(56) beard1,
в конфигурацию вход€т все функции?

¬се, описанные в технических требовани€х по опту, за исключением акта списани€, в ближайшее врем€ собираюсь доработать.
сканер как подключаем?

—канер подключаем к COM-порту, или через USB - с эмул€цией COM-порта, главное - чтобы поддерживалось внешнее событие 1—
сопоставление контрагентов и номенклатуры реализовано?

„то имеетс€ ввиду? »дентификаци€ номенклатуры и контрагента производитс€ по уникальному идентификатору ≈√ј»—.
58. beard1 15.01.16 22:28 —ейчас в теме
(57)

„то имеетс€ ввиду? »дентификаци€ номенклатуры и контрагента производитс€ по уникальному идентификатору ≈√ј»—


€ спрашивал про первичное сопоставление, например, получили номенклатуру поставщика из ≈√ј»—, естественно надо сопоставить со своей, вот эта функци€ реализована?
(58) beard1,  онечно, в обработке загрузки номенклатуры можно сопоставить загруженную номенклатуру со своей вручную, если элемент не найден в справочнике либо по коду ≈√ј»—, либо по наименованию.
60. dm1860 20.01.16 11:39 —ейчас в теме
≈ще один момент... акт постановки на баланс, (в который сканируютс€ марки) создает xml более 600 kb (около 8 тыс€ч марок в одном документе) и при попытке отправки в ≈√ј»— вашими функци€ми завершает работу 1—... :( с такой проблемой не боролись?
(60) dm1860, ¬ теме уже отвечал (51) - если передавать во внешний COM-объект очень длинные строки - 1— вылетает по ошибке. —охран€йте строку в файл и из неЄ загружайте.
62. Askaneli 02.02.16 16:26 —ейчас в теме
»де€ просто великолепна.
— некоторыми модификаци€ми использовал дл€ реализации всего что касаетс€ ≈√ј»—.
—пасибо огромное.
63. Ћузер 2 28.04.17 15:56 —ейчас в теме
≈гор а можно заказать внедрение?
¬ообще то »горь.  онечно могу помочь с внедрением.
ќставьте свое сообщение
¬опросы с вознаграждением