|
TXT vs. XML | ☑ | ||||||
---|---|---|---|---|---|---|---|---|
0
sanechichek
16.03.12
✎
18:01
|
Встала задача перед иностранным представительством сделать обмен данными 1с с их системой, то есть они присылают нам некие файлы мы их загружаем у себя, мы им высылаем файлы, они загружают у себя. Собственно, какой формат для этого обмена лучше всего выбрать?
|
|||||||
31
VasilyKushnir
16.03.12
✎
18:50
|
+ к 28 Сам использую
1. Для выгрузки в МеДок XML 2. Обмен с некоторыми клиентами MMO или его вариация EXT 3. С другими клиентами ТХТ (зараннее оговоренного вида) или DBF (в некоторых частных случаях применения = самый быстрый, особенно если к ДБФ-у присобачиваю индексный файл). |
|||||||
32
bahmet
16.03.12
✎
18:51
|
(0) обмен чего? одна-две таблицы с простыми типами - TXT
иначе XML. |
|||||||
33
ShoGUN
16.03.12
✎
18:54
|
Однохренственно.
|
|||||||
34
Kuein
16.03.12
✎
18:54
|
После нескольких случаев выгрузки контрагентов с непечатаемыми символами в названии (из Excel или с web-сайтов копировали при заведении) - только XML. Он их хоть как-то поедает.
XML |
|||||||
35
sanechichek
16.03.12
✎
18:55
|
(32) обмен документами "поступление товаров и ислуг", а именно таб. частью "Товары"
|
|||||||
36
VasilyKushnir
16.03.12
✎
18:58
|
Небольшое пояснение к п.31_3: "ТХТ (зараннее оговоренного вида)" - имеется в виду строго фиксированный текстовый формат, где расписаны форматы как каждой строки так и последовательность строк.
Например: 1-я строка поз. 1-7 - номер документа поз. 8-16 дата и т..д. |
|||||||
37
0xFFFFFF
16.03.12
✎
19:04
|
(8)
"xml гумно жрет гигабайты памяти фстопку негодуэ" Эксель гумно, жрет память, поэтому рисую таблицы в нотепаде. Автокад гумно, поэтому проектирую в паинте. |
|||||||
38
0xFFFFFF
16.03.12
✎
19:05
|
XML однозначно рулит
|
|||||||
39
0xFFFFFF
16.03.12
✎
19:06
|
да
XML |
|||||||
40
Vladal
16.03.12
✎
19:08
|
(33) Ненаучно выражаешься. ПО-научному "монопенисуально".
|
|||||||
41
Vladal
16.03.12
✎
19:09
|
(37) Ну да. А 1С так вообще... на кривых запросах ложит сервер или сама выпадает.
|
|||||||
42
ShoGUN
16.03.12
✎
19:12
|
(40) Да изофаллически мне, "однохренственно" или "монопенисуально"...
|
|||||||
43
vmv
16.03.12
✎
19:12
|
XML - только потому что стандарт обменов самой 1С
Для своих уникальных обменов есть вагон и маленькая тележка вариантов вне XML XML |
|||||||
44
Ахиллес
16.03.12
✎
19:12
|
(35) На вопрос "В каком стандарте XML выгружает 1С" надо отвечать - Одинэс настолько крутая программа, что может выгружать в любом стандарте. В том числе и gs1. Пусть от зависти подавятся и не считают тут нас за лохов которые только с текстовыми файлами справится могут.
XML |
|||||||
45
Steel_Wheel
16.03.12
✎
19:14
|
интересно, сможет ли буржуйская прога съексть то, что ей 1с нагенерит в xml. И vice versa (1с-овский xml не все парсеры понимают и в дерево развернуть могут)
|
|||||||
46
Ахиллес
16.03.12
✎
19:17
|
(45) Дело не в буржуйской проге, дело в радиусе кривизны рук топикстартера. Яндекс же смог сожрать иксымельку, которую, я ему подсунул и не подавился, хотя изначально 1С об Яндексе ни ухом ни рылом.
|
|||||||
47
sanechichek
16.03.12
✎
19:28
|
(45) вот и я подумал что с TXT будет намного проще и меньше рисков, а то сделаю а мне скажут что у них не грузится, в итоге вернемся к TXT, так еще и я буду в этом виноват.
|
|||||||
48
vmv
16.03.12
✎
19:39
|
(47) рассуждаешь как дилетант, с буржуями меншь разговоривай - мож накосишь пару сотен пока они не поймут что к чему)
|
|||||||
49
zladenuw
16.03.12
✎
19:47
|
(47) так у тебя же есть поля по которым ты должен выгружать.
Сделай более универсальным его, что бы можно было в хмл или в тхт :). TXT |
|||||||
50
DrShad
16.03.12
✎
19:48
|
фигли тут размышлять
XML |
|||||||
51
Ахиллес
16.03.12
✎
19:56
|
http://www.gs1.org/ecom/xml Оно?
(47) Будь мужиком, блеать, сделай по человечески! Пусть буржуи описание стандарта скинут и всё. Ты же только табличную часть товаров передавать будешь, там всего то несколько полей, чё ты ссышь так. |
|||||||
52
AlexNew
16.03.12
✎
20:24
|
(0) А чего не печатные копии? Проверять ту ли тебе txt прислали, тоже прикольно, а тупые xml схемы, чтобы код не писать - ацтой!
|
|||||||
53
MRAK
16.03.12
✎
21:11
|
(0) похрен
|
|||||||
54
mkostya
16.03.12
✎
21:20
|
не так давно сам стал делать
XML |
|||||||
55
siggoron
16.03.12
✎
21:33
|
xml
XML |
|||||||
56
jsmith
16.03.12
✎
21:46
|
иностранное или межпланетное? они по-моему грузят в XRVGTYUIOSD
|
|||||||
57
cons74
16.03.12
✎
21:59
|
ТС, тут ответа не дождешься, тем более с голосовалкой.
Каждый любит свои сигареты... |
|||||||
58
Steel_Wheel
16.03.12
✎
22:15
|
тут дело в том, что
1. Структурированные данные удобнее обрабатывать XML 2. Чтение/ЗаписьXML генерят XML с тегами укороченной формы. Косяк (хотя фиг знает -- возможен ли) может быть в том, если буржуинам понадобятся непременно теги полной формы. Тогда XML надо будет генерить через простые текстовые файлы. Что уже сложнее, чем текстовый обмен |
|||||||
59
Steel_Wheel
16.03.12
✎
22:17
|
Почему я так волнуюсь за буржуйскую прогу? Потому что 1с-ники бесплатны по сравнению с буржуями, и всю работу будет делать ТС. А некоторые файлы, которые генерит 1с через XML-запись НЕ открываются парсерами XML. Возможно, парсеры кривые... но проблема только с xml от 1с возникает, хотя и не всегда
|
|||||||
60
ShoGUN
16.03.12
✎
22:19
|
(58) За XML, генеренный через текст надо руки отрывать. Валидатор охреневать будет местами, и парсер вслед за ним.
|
|||||||
61
milan
16.03.12
✎
22:19
|
(59) пример файла в студию
|
|||||||
62
andrewks
16.03.12
✎
22:20
|
(8) ну, никто не заставляет юзать ДОМ-модель
|
|||||||
63
andrewks
16.03.12
✎
22:22
|
(60) XML суть текст. а руки надо отрывать горе-писателям, которые не в состоянии сгенерить валидный хмл
|
|||||||
64
artems
16.03.12
✎
22:24
|
Проще так
XML |
|||||||
65
ShoGUN
16.03.12
✎
22:24
|
(63) Чтобы сгенерить валидный XML в общем случае - надо учесть все нюансы и фактически написать абсолютно стандартные вещи заново.
|
|||||||
66
andrewks
16.03.12
✎
22:26
|
(65) дануна! и что же такого придётся писать? пару-тройку функций на 20-30 строк? экая задача
|
|||||||
67
Steel_Wheel
16.03.12
✎
22:26
|
(61) Это было около 3-ех лет назад. Из КД-2. Пробовал микрософтовским парсером, он выдал попап, что может открыть только как plain-текст.... не сохранился, к сожалению. Но случай запомнился
|
|||||||
68
andrewks
16.03.12
✎
22:27
|
(67) версия парсера, поди, 3-я была?
|
|||||||
69
Steel_Wheel
16.03.12
✎
22:28
|
(68) Я и не помню... оно в браузер встроено было, в ослик 6-ой
|
|||||||
70
Steel_Wheel
16.03.12
✎
22:30
|
Хотя, файлы xml обмена с логистикой акселотовской открывались нормально с сохранением структуры.
В чем дело -- не знаю, просто эту неприятную возможность я отметил |
|||||||
71
ShoGUN
16.03.12
✎
22:30
|
(66) Я тоже так думаю. Но на практике, если уж генеришь XML как сырой текст - то хоть через валидатор пропусти после этого...
|
|||||||
72
andrewks
16.03.12
✎
22:31
|
(71) ну, это без базара. две лишних строчки в коде не помешают
|
|||||||
73
andrewks
16.03.12
✎
22:34
|
+(72) но после отладки их лучше убрать, ибо, если использовать их в повседневке, то смысл прямой записи хмл теряется
|
|||||||
74
milan
16.03.12
✎
22:38
|
(66) Хочешь сказать что твои строчки запишут хмл валиднее чем годами оттестированные библиотеки?
TXT |
|||||||
75
VasilyKushnir
16.03.12
✎
22:39
|
(74) Библиотеки тоже люди писали...
|
|||||||
76
andrewks
16.03.12
✎
22:39
|
(74) посмотрю я на тебя, что ты будешь делать, когда годами оттестированные библиотеки отожрут всю память и вывалятся на самом интересном месте
|
|||||||
77
Fragster
гуру
16.03.12
✎
22:58
|
+ xsd
XML |
|||||||
78
SerMaxim
16.03.12
✎
23:18
|
Аминь
XML |
|||||||
79
Лефмихалыч
16.03.12
✎
23:19
|
чо тут думать?..
XML |
|||||||
80
Капитан Смоллет
16.03.12
✎
23:27
|
(0) Чего тут думать? Если кодировка UTF-8 для простых типов данных - формат TXT. Если структурированные данные - XML.
XML |
|||||||
81
sanechichek
16.03.12
✎
23:54
|
Всем спасибо за советы!
|
|||||||
82
Kuzen
17.03.12
✎
00:25
|
У xml есть символы которые 1с не читает и сваливается по ошибке к примеру "&". Делал обмен с интернет магазином столкнулся с таким.
|
|||||||
83
Эмбеддер
17.03.12
✎
07:18
|
(82) &
|
|||||||
84
Sammo
17.03.12
✎
08:27
|
Сделать схему и сообщения валидировать перед отправкой.
XML |
|||||||
85
Маленький Вопросик
17.03.12
✎
08:35
|
У меня уже давно алгоритмы написаны чтения/записи XML или TXT - зачем такое обсуждать? Берешь, пользуешься.
В XML можно хранить несколько табличных частей... XML |
|||||||
86
andrewks
17.03.12
✎
09:08
|
(82) спасибо, поржал
|
|||||||
87
experimentator76
17.03.12
✎
09:34
|
XML - это все-таки стандарт
XML |
|||||||
88
ptrtss
17.03.12
✎
10:09
|
Текстовый формат, разработанный под конкретные обменивающиеся системы может в десятки раз более экономичным, но требует некоторого времени на разработку и эксплуатационное тестирование (коллектив, готовься к глюкам то там то здесь, если по русски). С XML всем работать легче, но долго, и память жрет. Выбирайте что критичнее
Плюс, для определенных объемов передаваемых данных XML в принципе не подходит TXT |
|||||||
89
bodri
17.03.12
✎
10:31
|
CSV - там разделение вроде как ";"
и он открывается в екселе и в итоге получается, что-то типа ДБФ приходилось как-то для САПа делать. TXT |
|||||||
90
bodri
17.03.12
✎
10:33
|
(89) wiki:CSV
|
|||||||
91
Упанишады
17.03.12
✎
10:39
|
Фактический стандарт для 1С.
XML |
|||||||
92
Упанишады
17.03.12
✎
10:39
|
(91)+ Отточишь навыки.
|
|||||||
93
andrewks
17.03.12
✎
10:49
|
(88) "Плюс, для определенных объемов передаваемых данных XML в принципе не подходит" мягко говоря, неправда
|
|||||||
94
Torquader
17.03.12
✎
11:46
|
Начнём с того, что xml - это один из вариантов текстового файла, так как там внутри текст, только специально структурированный. Проблема в xml в том, что записывается очень много лишней информации, так как название каждого поля объекта пишется так, как оно указано.
Кажущая простота парсинга xml-файла упирается в то, что есть готовые парсеры, которые чаще всего загружают весь файл в память и там его разбирают, что иногда кончается нехваткой памяти. При изменении структуры xml-файла придётся также править программу, как и в случае с txt-файлами, а может быть, даже и больше. Также для xml-файла оказывается смертельной вложенность другого файла во внутрь, так как может просто произойти нарушение дерева xml из-за одинаковых объектов. Для txt-файла есть большая свобода размещения данных, а также возможность использования, например, php-сериализации, когда можно складывать ссылки между объектами, что напрямую в xml-файле не поддерживается. Некоторые системы умеют выгружать xml-файлы, но половина свойств объектов оказывается в параметрах тега объекта, а другие - во вложенных тегах - сиё определяет выгружающая программа. А вот при "кормлении" 1С такими файлами возникает проблема, так как нужно точно и ясно оговаривать что и где будет. В случае применения экранирования символов можно избежать наложения символов внутри блока данных с символами разделения блоков. Построчное чтение txt-файла оказывается быстрее, чем чтение xml-файла. TXT |
|||||||
95
zak555
17.03.12
✎
11:50
|
(94) > есть готовые парсеры, которые чаще всего загружают весь файл в память и там его разбирают
не все же сразу в память |
|||||||
96
Torquader
17.03.12
✎
12:04
|
(95) Дерево объектов строится в памяти - поэтому, файл чаще всего или целиком в памяти или читается много раз по кусочкам (что даже медленнее, чем файл в памяти).
|
|||||||
97
Wern
17.03.12
✎
12:31
|
Последовательное чтение хмл никто не отменял. Можно хоть по одной записи выдергивать если есть желание.
|
|||||||
98
AlexNew
17.03.12
✎
13:11
|
Настаиваю опять, только печатные копии и проверять руками структуру, каждый раз, или валиться по ошибке, если не та, или фигню в базу напихать! Адназначна (с).
|
|||||||
99
SiAl-chel
17.03.12
✎
14:05
|
ИМХО
XML |
|||||||
100
Упанишады
17.03.12
✎
14:51
|
(100)
|
|||||||
101
Dethmont
17.03.12
✎
15:32
|
XML с использованием фабрикиXDTO
XML |
|||||||
102
AlexNew
17.03.12
✎
15:38
|
(101) На больших файлах - нет!
|
|||||||
103
Господин ПЖ
17.03.12
✎
15:39
|
тупая ветка... пока нет внятных требований к носителю - все выборы бессмысленны
|
|||||||
104
opty
17.03.12
✎
15:41
|
||||||||
105
Злопчинский
17.03.12
✎
15:45
|
Все равно - большую часть кода что в тексте, что в иксемеле занимает не чтение и разбор данных а распихивание ппрочитанного по нужным местам/объектам - поэтому, в общем по барабану. иксемель может быть чуток понятнее за счет наличия тегов/атрибутов - ДА И ТО, В РЕДКИХ СЛУЧАЯХ. ну а так как периодически случается невозможность работы парсера - то приходится извращаться.. Текст - прочитается всегда.
. так что - текст... |
|||||||
106
AlexNew
17.03.12
✎
15:52
|
(105) Предлагаю и всякие SQL отменить, они ж на дисках хранятся.
|
|||||||
107
Злопчинский
17.03.12
✎
15:54
|
(106) а фигли делать.. грузиишь например v7+ - 1ска падает... и вместо того, чтобы грузить данные - кучу времени убиваешь на поиски бодяги...
. хотя мну пофиг.. обменов у меня мало - что наружу что внуть - отдам/загружу в каком надо формате... все равно - что под каждый текстовик, что под каждый иксемель - писать свою загрузку данных... |
|||||||
108
Kuzen
19.03.12
✎
22:43
|
(83) И что это?
(86) Смари не абассыся от смеха. Как передать наименование товара которое содержит данный символ к примеру "проктер & гэмбэл" |
|||||||
109
Kuzen
19.03.12
✎
23:05
|
(86) Дерзай http://zalil.ru/32909240
ЧтениеXML = Новый ЧтениеXML; ЧтениеXML.ОткрытьФайл("c:/1.xml"); Пока ЧтениеXML.Прочитать() Цикл // Обработка узла XML КонецЦикла; |
|||||||
110
serffer
19.03.12
✎
23:18
|
мой опыт говорит, что если вам сказали выбрать формат, то потом вы еще долго будете утверждать формат,содержание, структуру
XML |
|||||||
111
serffer
19.03.12
✎
23:24
|
сейчас выбираете формат.
потом наверняка будете утрясать содержание, состав, структуру обмена. иногда бывают и случаи когда "нужно было вчера". ТХТ придется переделывать на отдельном, более низком уровне логики. я бы не связывался. боюсь "бессонных ночей". XML |
|||||||
112
Balabass
20.03.12
✎
01:10
|
Голосую за:
TXT |
|||||||
113
Balabass
20.03.12
✎
01:11
|
+ Сам разрабатываешь структуру файла. Используешь спец знаки в строке.
Потом разбираешь строку по этим знакам и получаешь все что необходимо. |
|||||||
116
Kuzen
20.03.12
✎
08:29
|
(109) Ну где же дерзкий чел из (89)?
|
|||||||
117
Адинэснег
20.03.12
✎
08:34
|
3. Вэб-сервис
|
|||||||
118
badboychik
20.03.12
✎
08:38
|
3. JSON
4. YAML |
|||||||
119
Злопчинский
20.03.12
✎
08:48
|
(114) а как делсть схему?
|
|||||||
120
Kuzen
20.03.12
✎
09:01
|
(86) ANDREWKS ответь на (109)
|
|||||||
121
stix2010
20.03.12
✎
09:11
|
объемы данных не указаны
XML |
|||||||
122
stix2010
20.03.12
✎
09:12
|
в голосовалке нет кг/ам
|
|||||||
123
_Atilla
20.03.12
✎
09:28
|
(121) Согласен.
XML |
|||||||
124
х86
20.03.12
✎
09:35
|
имхо проще
XML |
|||||||
127
pumbaEO
20.03.12
✎
11:51
|
(125) у тебя не валидный xml, это тоже самое что в dbf запишешь в заголовок мусор всякий, а потом жалуешься, что не открывает. http://screencast.com/t/05jb8LDWeqO
|
|||||||
128
Kreont
20.03.12
✎
11:53
|
Без вариантов, сам боялся, но уже теперь нравиться после N-выгрузок/загрузок в налоговую :)))
Насчет спец.символов, учите мат.часть ХМЛ-а: & ==== & XML |
|||||||
129
andrewks
20.03.12
✎
11:57
|
(120) почитай-ка здесь: wiki:XML, раздел "Спецсимволы"
|
|||||||
130
DMLangepas
20.03.12
✎
12:01
|
привычно да и лучше
XML |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |