#0
by sanechichek
Встала задача перед иностранным представительством сделать обмен данными 1с с их системой, то есть они присылают нам некие файлы мы их загружаем у себя, мы им высылаем файлы, они загружают у себя. Собственно, какой формат для этого обмена лучше всего выбрать?
#0
by sanechichek
Встала задача перед иностранным представительством сделать обмен данными 1с с их системой, то есть они присылают нам некие файлы мы их загружаем у себя, мы им высылаем файлы, они загружают у себя. Собственно, какой формат для этого обмена лучше всего выбрать?
#10
by sanechichek
а в каком стандарте 1с выгружает XML, так как первый вопрос от иностранных коллег был именно таким, а я даже не знал что ответить, они сказали что они смогут загружать и выгружать в стандарте gs1.
#12
by Vladal
Как пропишешь, так и будет выгружать. Для того, чтобы интереснее было. Иностранцы пусть присылают вам в удобном для вас формате, вы - в удобном для них.
#13
by Vladal
Текстовый - как, в одну строку или разделитель? Разделители табуляторы или символы? При одинаковых объемах данных, в XML будет больший размер из-за тэгов.
#15
by sanechichek
если текстовый, то колонки буду разделяться строго длиной, то есть первое значение 20 символов, втрое - 3... иностранцы сказали, что бы мы решили TXT или XML.
#16
by Конфигуратор1с
- разделитель какой? а то мучался с загрузкой из клиент банка в текстовом формате. где разделителем выступала ";". Вот когда в назначении платежа этих точек с запятой было несколько было очень весело Поэтому ХМЛЬ
#18
by sanechichek
разделителя не будет совсем, то есть будем иметь следущее: 20120315Ноутбук 15 7888454 2000.00 20120316Хлебопечка 785411 178.0
#19
by Крепкий
изменились размеры реквизитов, изменился порядок или позиция в парсируемой строки - началося море "удовольствия", ну а оно надо?
#24
by sanechichek
не думаю что размеры реквизитов могут сильно именится, к примеру изначально на поле артикул выдиляется 20 символов, сейчас реально 12 (8 в запасе). Кстати заметил что из САПа в основном выгружают без разделителей, то есть строго по длине.
#25
by sanechichek
а что по поводу производительности, обмен будет делатся по расписанию и через ftp, не будет ли больше проблем из XML или каких то сбоев, поскольку XML будет большего размера чем TXT.
#26
by Vladal
и Знаком и с разделителями ;) Некоторые банки грузят строго определенное поле, пустое оно или заполнено, но если надо 40 символов, их есть. Некоторые пустые поля просто пропускают и помечают только разделитель. Для моего парсера пофиг, сколько там букивок - 40, 20 или дв разделителя подряд, т.к. он ползёт посимвольно и нашел разделитель - считал поле до следующего. Если два разделителя подряд - поле пустое, читаем следующее зп ним поле.
#27
by Vladal
Не будет. Не намного он больше, архивируй. Тем более, что восьмёрка архивирует нативно.
#28
by VasilyKushnir
см Только кома-сепаратор - частный случай "Текста с разделителями" (мне больше нравиться в качестве разделмителей непечатные и естественно неуправляющие символы), применение в качестве разделителя ";" (CSV) чревато. Атак: 3. Вариант 3 - другое. Плевать какой формат, лишб бы было удобно им пользоваться и (главное!!) чтобы работало.
#29
by Vladal
Вот и лепи по-саповому. А еще лучше - XML, поиздевайся над буржуями, пусть свою саму научат разговаривать на XML.
#30
by Vladal
Обычно казначейство лепит точку с запятой, непечатаемые не встречал, но вот из неиспользуемых частенько используется вертикальная черта |
#31
by VasilyKushnir
+ к 28 Сам использую 1. Для выгрузки в МеДок XML 2. Обмен с некоторыми клиентами MMO или его вариация EXT 3. С другими клиентами ТХТ (зараннее оговоренного вида) или DBF (в некоторых частных случаях применения = самый быстрый, особенно если к ДБФ-у присобачиваю индексный файл).
#34
by Kuein
После нескольких случаев выгрузки контрагентов с непечатаемыми символами в названии (из Excel или с web-сайтов копировали при заведении) - только XML. Он их хоть как-то поедает.
#36
by VasilyKushnir
Небольшое пояснение к п.31_3: "ТХТ (зараннее оговоренного вида)" - имеется в виду строго фиксированный текстовый формат, где расписаны форматы как каждой строки так и последовательность строк. Например: 1-я строка и т..д.
#37
by 0xFFFFFF
"xml гумно жрет гигабайты памяти фстопку негодуэ" Эксель гумно, жрет память, поэтому рисую таблицы в нотепаде. Автокад гумно, поэтому проектирую в паинте.
#43
by vmv
XML - только потому что стандарт обменов самой 1С Для своих уникальных обменов есть вагон и маленькая тележка вариантов вне XML
#44
by Ахиллес
На вопрос "В каком стандарте XML выгружает 1С" надо отвечать - Одинэс настолько крутая программа, что может выгружать в любом стандарте. В том числе и gs1. Пусть от зависти подавятся и не считают тут нас за лохов которые только с текстовыми файлами справится могут.
#45
by Steel_Wheel
интересно, сможет ли буржуйская прога съексть то, что ей 1с нагенерит в xml. И vice versa (1с-овский xml не все парсеры понимают и в дерево развернуть могут)
#46
by Ахиллес
Дело не в буржуйской проге, дело в радиусе кривизны рук топикстартера. Яндекс же смог сожрать иксымельку, которую, я ему подсунул и не подавился, хотя изначально 1С об Яндексе ни ухом ни рылом.
#47
by sanechichek
вот и я подумал что с TXT будет намного проще и меньше рисков, а то сделаю а мне скажут что у них не грузится, в итоге вернемся к TXT, так еще и я буду в этом виноват.
#48
by vmv
рассуждаешь как дилетант, с буржуями меншь разговоривай - мож накосишь пару сотен пока они не поймут что к чему)
#49
by zladenuw
так у тебя же есть поля по которым ты должен выгружать. Сделай более универсальным его, что бы можно было в хмл или в тхт :).
#51
by Ахиллес
Оно? Будь мужиком, блеать, сделай по человечески! Пусть буржуи описание стандарта скинут и всё. Ты же только табличную часть товаров передавать будешь, там всего то несколько полей, чё ты ссышь так.
#52
by AlexNew
А чего не печатные копии? Проверять ту ли тебе txt прислали, тоже прикольно, а тупые xml схемы, чтобы код не писать - ацтой!
#58
by Steel_Wheel
тут дело в том, что 1. Структурированные данные удобнее обрабатывать XML 2. Чтение/ЗаписьXML генерят XML с тегами укороченной формы. Косяк (хотя фиг знает -- возможен ли) может быть в том, если буржуинам понадобятся непременно теги полной формы. Тогда XML надо будет генерить через простые текстовые файлы. Что уже сложнее, чем текстовый обмен
#59
by Steel_Wheel
Почему я так волнуюсь за буржуйскую прогу? Потому что 1с-ники бесплатны по сравнению с буржуями, и всю работу будет делать ТС. А некоторые файлы, которые генерит 1с через XML-запись НЕ открываются парсерами XML. Возможно, парсеры кривые... но проблема только с xml от 1с возникает, хотя и не всегда
#60
by ShoGUN
За XML, генеренный через текст надо руки отрывать. Валидатор охреневать будет местами, и парсер вслед за ним.
#63
by andrewks
XML суть текст. а руки надо отрывать горе-писателям, которые не в состоянии сгенерить валидный хмл
#65
by ShoGUN
Чтобы сгенерить валидный XML в общем случае - надо учесть все нюансы и фактически написать абсолютно стандартные вещи заново.
#66
by andrewks
дануна! и что же такого придётся писать? пару-тройку функций на 20-30 строк? экая задача
#67
by Steel_Wheel
Это было около 3-ех лет назад. Из КД-2. Пробовал микрософтовским парсером, он выдал попап, что может открыть только как plain-текст.... не сохранился, к сожалению. Но случай запомнился
#70
by Steel_Wheel
Хотя, файлы xml обмена с логистикой акселотовской открывались нормально с сохранением структуры. В чем дело -- не знаю, просто эту неприятную возможность я отметил
#71
by ShoGUN
Я тоже так думаю. Но на практике, если уж генеришь XML как сырой текст - то хоть через валидатор пропусти после этого...
#73
by andrewks
+ но после отладки их лучше убрать, ибо, если использовать их в повседневке, то смысл прямой записи хмл теряется
#74
by milan
Хочешь сказать что твои строчки запишут хмл валиднее чем годами оттестированные библиотеки?
#76
by andrewks
посмотрю я на тебя, что ты будешь делать, когда годами оттестированные библиотеки отожрут всю память и вывалятся на самом интересном месте
#80
by Капитан Смоллет
Чего тут думать? Если кодировка UTF-8 для простых типов данных - формат TXT. Если структурированные данные - XML.
#82
by Kuzen
У xml есть символы которые 1с не читает и сваливается по ошибке к примеру "&". Делал обмен с интернет магазином столкнулся с таким.
#85
by МаленькийВопросик
У меня уже давно алгоритмы написаны чтения/записи XML или TXT - зачем такое обсуждать? Берешь, пользуешься. В XML можно хранить несколько табличных частей...
#88
by ptrtss
Текстовый формат, разработанный под конкретные обменивающиеся системы может в десятки раз более экономичным, но требует некоторого времени на разработку и эксплуатационное тестирование (коллектив, готовься к глюкам то там то здесь, если по русски). С XML всем работать легче, но долго, и память жрет. Выбирайте что критичнее Плюс, для определенных объемов передаваемых данных XML в принципе не подходит
#89
by bodri
CSV - там разделение вроде как ";" и он открывается в екселе и в итоге получается, что-то типа ДБФ приходилось как-то для САПа делать.
#93
by andrewks
"Плюс, для определенных объемов передаваемых данных XML в принципе не подходит" мягко говоря, неправда
#94
by Torquader
Начнём с того, что xml - это один из вариантов текстового файла, так как там внутри текст, только специально структурированный. Проблема в xml в том, что записывается очень много лишней информации, так как название каждого поля объекта пишется так, как оно указано. Кажущая простота парсинга xml-файла упирается в то, что есть готовые парсеры, которые чаще всего загружают весь файл в память и там его разбирают, что иногда кончается нехваткой памяти. При изменении структуры xml-файла придётся также править программу, как и в случае с txt-файлами, а может быть, даже и больше. Также для xml-файла оказывается смертельной вложенность другого файла во внутрь, так как может просто произойти нарушение дерева xml из-за одинаковых объектов. Для txt-файла есть большая свобода размещения данных, а также возможность использования, например, php-сериализации, когда можно складывать ссылки между объектами, что напрямую в xml-файле не поддерживается. Некоторые системы умеют выгружать xml-файлы, но половина свойств объектов оказывается в параметрах тега объекта, а другие - во вложенных тегах - сиё определяет выгружающая программа. А вот при "кормлении" 1С такими файлами возникает проблема, так как нужно точно и ясно оговаривать что и где будет. В случае применения экранирования символов можно избежать наложения символов внутри блока данных с символами разделения блоков. Построчное чтение txt-файла оказывается быстрее, чем чтение xml-файла.
#95
by zak555
> есть готовые парсеры, которые чаще всего загружают весь файл в память и там его разбирают не все же сразу в память
#96
by Torquader
Дерево объектов строится в памяти - поэтому, файл чаще всего или целиком в памяти или читается много раз по кусочкам (что даже медленнее, чем файл в памяти).
#97
by Wern
Последовательное чтение хмл никто не отменял. Можно хоть по одной записи выдергивать если есть желание.
#98
by AlexNew
Настаиваю опять, только печатные копии и проверять руками структуру, каждый раз, или валиться по ошибке, если не та, или фигню в базу напихать! Адназначна (с).
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- конвертация xml в txt
- XML ошибка "Не удается просмотреть ввод XML с использованием списка стилей
- ТЗ, имеет 2 строки, упаковываю в *.txt функцией ЗначениеВСтроку(Стр); Читаю из txt
- РАРУС vs ФОРЕС vs AXELOT vs ITOB
- ЗУП 2.5.13.5 Исправление больничного vs прямое сторнирование vs удержание?
- OLE vs xml vs text vs другое
- Microsoft Dynamics NAV vs 1c vs sap
- Jdeveloper vs Eclipse vs NetBeans
В этой группе 1С
- Принятие к учету безвозмездно полученного ОС
- СКД: обработка расшифровки и права доступа
- 1с Элемент формы таблицаЗначений - Отбор, и РегистрСведений
- v7: Нужен ли ИТС для 7.7?
- Спозиционироваться в форме выбора справочника
- помогите КД. произвольный алгоритм.
- Построитель на видит переданный параметр
- метод списания в УТ11
- Перенос остатков 10.11.2 счета из 1.6 в 2.0
- v7: Как подключить ФР Fprint-55К к 1С 7.7
- 1С 8.2 Поле HTML документа. Изменение кодировки
- 8.2 Поле HTML-документа. Изменение кодировки
- Проблема распределения счета 26 по разным видам деятельности при закрытии месяца
- новый COMОбъект("WIA.ImageProcess"); Ошибка при вызове конструктора (COMОбъект)
- Табличная часть Внешняя обработка
- RLS по ответственному УТ 10.3
- Где в УТ11 групповое перепроведение и вообще обработки?
- СКД. Системное поле, свой заголовок в шапке
- восстановление регистра сведений
- Как нарисовать макет для СКД на вложенных схемах?