DBF юзают неудачники?

Внимание! Тема закрыта. Добавлять сообщения в закрытую тему запрещено.
1. fixin 4253 31.01.12 19:04 Сейчас в теме
Считаю, что в эпоху XML человек, который использует DBF для задач обмена, хранения данных или еще по каким-либо причинам, не связанным непосредственно с тем, что данные ему поставляются только в DBF - неудачник.
Пора выбросить этот формат на свалку истории в теме обмена.
Я понимаю, что в 1С есть функции для работы с DBF, но использовать этот формат для обменов - маразм.
VanWilder; Ish_2; +2 4 Ответить
Ответы
Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
17. hogik 443 01.02.12 00:07 Сейчас в теме
(1)
Странное представление о неудачнике.
Человек, который создаёт DBF файл - свободен в выборе формата.
А, вот, кому данные "поставляются только в DBF"(с) - он и есть НЕУДАЧНИК.
Бедняга, ковыряется с чужими отправлениями... :-)
92. drat9 02.02.12 15:55 Сейчас в теме
Чтение файла DBF

В данном случае, мне кажется, что проще написать программу и прокомментировать ее, чем делать что-то еще. Вы уже такие продвинутые, раз добрались до этой главы! Я горжусь вами!

Файл = создатьОбъект("XBASE"); //создаем ссылку на файл DBF
Файл.ОткрытьФайл("catalog.dbf"); //открываем файл на диске
Файл.КодоваяСтраница(1); //задаем кодировку: 0 - windows, 1 - DOS

Если Файл.Открыта()=0 Тогда //проверяем, удалось ли открыть файл
........Сообщить("Не удалось открыть файл!");
КонецЕсли;

Файл.Первая(); //позиционируемся на первой записи
Пока Файл.ВКонце()=0 Цикл //пока не дошли до конца, крутим цикл
.......НомерЗаписи = Файл.НомерЗаписи(); //получаем номер текущей записи
.......НазвТовара = Файл.NAME; //получаем значение поля
.......Цена = Файл.ПолучитьЗначениеПоля("PRICE"); //так тоже можно, но чуть медленнее
.......Файл.Следующая(); //переходим на следующую запись
КонецЦикла;

Файл.Последняя(); //позиционируемся на первой записи
Пока Файл.ВНачале()=0 Цикл //пока не дошли до начала, крутим цикл
.......НазвТовара = Файл.NAME;
.......Цена = Файл.PRICE;
.......Файл. Предыдущая(); //переходим на предыдущую запись
КонецЦикла;

Для н = 1 По Файл.КоличествоЗаписей() Цикл //здесь все понятно, по-моему
......Файл.Перейти(н); //позиционируемся на определенной записи
.......НазвТовара = Файл.NAME;
.......Цена = Файл.PRICE;
КонецЦикла;

Файл.ЗакрытьФайл(); //не забывайте пожалуйста

Запись в файл DBF

Файл = создатьОбъект("XBASE"); //создаем ссылку на файл DBF

//определяем структуру файла
//Синтаксис: ДобавитьПоле(<Название>,<Тип>,<Длина>,<Точность>)

Файл.ДобавитьПоле("NAME","S",50,0);
Файл.ДобавитьПоле("PRICE","N",10,2);

Файл.СоздатьФайл("catalog.dbf"); //создаем файл физически

СпрТовары.ВыбратьЭлементы();
Пока СпрТовары.ПолучитьЭлемент()=1 Цикл
.......Файл.Добавить();
.......Файл.NAME = СпрТовары.Наименование;
.......Файл.УстановитьЗначениеПоля("PRICE",СпрТовары.Цена) //так тоже можно;
.......Файл.Записать();
КонецЦикла;

Файл.ЗакрытьФайл(); //не забывайте пожалуйста

Работа со структурой файла DBF

Например, создадим файл, идентичный по структуре исходному.
//При этом применяется метод ОписаниеПоля, который возвращает характеристики поля с указанным номером
//синтаксис: ОписаниеПоля(<НомерПоля>,<НазваниеПоля>,<Тип>,<Длина>,<Точность>)

Файл1 = СоздатьОбъект("XBASE");
Файл2 = СоздатьОбъект("XBASE");

Файл1 = ОткрытьФайл("file1.dbf");

Для н = 1 По Файл1.КоличествоПолей() Цикл
........НазвПоля = "";
........Тип = "";
........Длина = 0;
........Точность = 0;
........Файл1.ОписаниеПоля(н,назвПоля,Тип,Длина,Точность);
........Файл2.ДобавитьПоле(назвПоля,Тип,Длина,Точность);
КонецЦикла;

Для работы с файлом DBF неизвестной структуры часто применяются следующие методы:
ПолучитьЗначениеПоля(<ИмяПоля>);
УстановитьЗначениеПоля(<ИмяПоля>,<значение>);

Работа с удаленными записями
Файлы DBF устроены таким образом, что удаление записи не приводит к физическому удалению записи из файла. Запись просто помечается на удаление и пропускается при переборе. Таким образом размер файла остается прежним. Чтобы физически удалить все помеченные на удаление записи нужно применить метод Сжать. Средства встроенного языка позволяют работать с такими записями, перебирать их и даже отменять пометку на удаление.

Файл.ПоказыватьУдаленные(1);
Файл.Первая();
Пока Файл.ВКонце()=0 Цикл
......Если Файл.ЗаписьУдалена()=1 Тогда
............Файл.Восстановить();
......КонецЕсли;
......Файл.Следующая();
КонецЦикла;

Файл.Первая();
Пока Файл.ВКонце()=0 Цикл
......Если Файл.PRICE < 1000 Тогда
............Файл.Удалить();
......КонецЕсли;
......Файл.Следующая();
КонецЦикла;

Файл.Сжать(); //удалить записи физически

Можно удалить все записи в файле одним движением. При этом они физически удаляются и не могут быть восстановлены.
Файл.ОчиститьВсе();

Стоит еще отметить про метод Очистить(), что он очищает все поля текущей записи. Атрибуты, соответствующие полям типа "строковый" приобретают значение «пустая строка», числовой — 0, логический — 0, дата — «пустая дата».


Работа с индексами

Для организации упорядочивания содержимого файла БД и поиска в ней по значению одного или нескольких полей применяется механизм индексов. Его применение можно сравнить с сортировкой картотеки по определенному признаку (совокупности признаков). Однако, в отличие от картотеки, файл БД может иметь сразу несколько индексов, и, соответственно, являться упорядоченным одновременно по нескольким признакам. Индексы хранятся в индексном файле. Индексный файл может содержать информацию более чем об одном индексе. Рекомендуется для одного файла DBF иметь один индексный файл, в котором хранятся все индексы для этого файла.

Каждый индекс имеет наименование, признак уникальности, выражение индекса и фильтр. Наименование индекса используется для идентификации индекса. Выражение индекса и фильтр представляют собой написанные на специальном языке выражения, вычисление значения которых для каждой записи позволяет определить ее место при упорядочивании и необходимость помещения ее в упорядоченный список (индекс может содержать упоминание не обо всех записях таблицы, а только об удовлетворяющих выражению фильтра). Уникальный индекс (имеющий установленным признак уникальности) позволяет иметь в индексе ссылки на записи только с различным значением индексного выражения.

Основное правило: индекс нужен, чтобы быстро искать нужную запись. DBF-ФАЙЛ Индекс по фамилии
Физ. номер записи Фамилия
1 Иванов
2 Абдулов
3 Барабанов
4 Мирнов
5 Раскольников
6 Комаров
Фамилия Физ. номер записи
Абдулов 2
Барабанов 3
Иванов 1
Мирнов 4
Комаров 6
Раскольников 5



Нужно быстро найти Комаров. В неупорядоченном исходном файле искать его можно только последовательным перебором всех записей, что будет очень долго при большом числе записей. В индексе найти Комарова можно очень быстро, поскольку индекс отсортирован по полю Фамилия. При этом мы узнаем физический номер записи в файле DBF и производим прямое позиционирование на нужную запись.

После создания структуры базы данных можно добавить индексы следующим образом:
//Синтаксис: ДобавитьИндекс(<Название>, <Выражение>, <Уникальность>, <Убывание>, <Фильтр>)

Файл = СоздатьОбъект("XBase");
Файл.ДобавитьПоле("NAME", 1, 19, 3);
Файл.ДобавитьПоле("PRICE", 2, 25, 0);
Файл.ДобавитьИндекс("IDXCODE", "CODE", 1, 0, "");
Файл.ДобавитьИндекс("IDXNAME", "NAME", 0, 0, "");
Файл.ДобавитьИндекс("IDXNAMECODE", "NAME+CODE", 0, 0, "");
Файл.СоздатьФайл("mydb.dbf", "mydb.cdx");

//1-й вариант
Файл.ТекущийИндекс("IDXNAME");
Файл.Найти("Иванов",0); //передается значение и режим поиска

//2-й вариант
Файл.ТекущийИндекс("IDXNAMECODE");
Файл.Ключ.NAME = "Иванов";
Файл.Ключ.CODE = 123;
Файл.НайтиПоКлючу(0);

//после сбоя рекомендуется заново переформировать все индексы
Файл.Переиндексировать();

В 1С существует специальный язык для задания выражений и фильтра индекса. Подробнее о нем, смотрите в документации на встроенный язык.
mailrum2004; +1 Ответить
242. Abadonna 3958 06.02.12 05:18 Сейчас в теме
(1)
Считаю, что в эпоху XML человек, который использует DBF для задач обмена, хранения данных или еще по каким-либо причинам, не связанным непосредственно с тем, что данные ему поставляются только в DBF - неудачник.

Считаю, что человеку, всерьез написавшему такую тему, как минимум делать не фиг.
1c_ssnik; +1 Ответить
243. fixin 4253 06.02.12 09:27 Сейчас в теме
(242) а я считаю до 10 и что? (намекаю на то, что свою позицию надо аргументировать, иначе это глубокое имхо, на которое глубоко пофиг).

(240) OLAP кубы - это блин показатель сложности работы? Бугога.... Сколько у вас баз, сколько часов программирования вы закрываете в месяц, сколько стоит час простоя?
1c_ssnik; +1 Ответить
245. Abadonna 3958 06.02.12 11:45 Сейчас в теме
(243)
намекаю на то, что свою позицию надо аргументировать

Обосновать? Охотно. Вот такое ты не напишешь никогда, умения и знаний не хватит.
akXmlEdit - v1.5.0.7 редактор XML
Потому что ты - чистый одноэснег. И XML ты знаешь в пределах 1С и того, что тебе 1С предоставила для работы с ним. Поэтому, в моих категориях, ты - неудачник.
Арчибальд; vasilykushnir; +2 Ответить
246. vasilykushnir 63 06.02.12 11:59 Сейчас в теме
(245) Жаль, что автору я уже поставил +
Ты пытаешься еще с ним дисскутировать?!! Знаешь, как-то я нарвался на одного психа (но я-то не знал, что он псих!, хорошо хоть не буйный... это потом мне обяснили - приколисты , блин....). Что интересно: и вроде все правильно и красиво говорит - но не что-то не то! Ну не ТО и все! Ну бред! Я уже начал нервничать , доказывая, что он чушь несет..., потом "юмористы" сжвлились, обяснили ситуацию - вместе поржали. И вроде с тех пор зарекся с шизоидами спорить, так нет! - поволокло меня в этой ветке.
Вот еще одна палата №6: http://forum.infostart.ru/forum1/topic52579/message579119/#message579119
255. margo2007 15 06.02.12 14:43 Сейчас в теме
(246) vasilykushnir,
А вот это: http://forum.infostart.ru/forum1/topic49765/message552088/?result=edit#message552088 ?
Неужели тоже прикол?
Или fixin(у) действительно не повезло?
257. Арчибальд 2707 06.02.12 14:58 Сейчас в теме
(255)
Потом фельдкурат пустился в откровенность: рассказал, что он должен за верховые сапоги, за хлыст и седло, что несколько лет тому назад у него был триппер и он лечил его марганцовкой.
258. vasilykushnir 63 06.02.12 15:03 Сейчас в теме
(255) Похоже его действительно прихватило. Хотя... принимать этого человека на веру... - я люто извиняюсь. Но в той теме он хотя бы вел себя почти как нормальный человек. И кстати (256) - пинать его не хотелось совсем. Все в меру его адекватности (в той ветке) с пониманием отнеслись к его проблеме.
247. tango 540 06.02.12 12:00 Сейчас в теме
(245) "Потому что ты - чистый одноэснег". Протестую! Ты ведь не называешь его собакой!!
248. Арчибальд 2707 06.02.12 12:03 Сейчас в теме
(247) То есть надо было сказать "грязный одноэснег"?
274. viktor777 06.02.12 21:06 Сейчас в теме
(1) fixin,
НДА, сравнение однако, ДБФ и XML, разные форматы, разные потребности. Нож убивает так же быстро как и пистолет, зачем извращаться если хватает функционала ДБФ?
275. fixin 4253 06.02.12 21:09 Сейчас в теме
(274) перечитай тему еще раз. XML перекрывает потребности DBF, смысла в использовании DBF не вижу. На худой конец CSV, если есть озабоченность размерами пакета и лень зиповать. Но DBF? Смысл?
276. tango 540 06.02.12 21:15 Сейчас в теме
(275) просто перечитай еще раз: "смысла в использовании DBF не вижу", и, наверное, действительно, хватит об этом
2. Гость 31.01.12 19:10
А какая разница? В чем проблема?
4. fixin 4253 31.01.12 19:18 Сейчас в теме
(2)(3) дык встречаю программистов, которые предлагают "выгрузи чего-то там в DBF"
(3) для каких, например?
3. userrxx 31.01.12 19:17 Сейчас в теме
Это что-то личное? Чем же вам дбф не угодил , для определенных целей ооочень удобная штука.
5. Гость 31.01.12 19:22
Таким отвечаешь, хорошо, выгружу в дбф.
6. TBAPb23 31.01.12 19:23 Сейчас в теме
А можно какой нибудь перечень почему DBF так плох и что его нужно отправлять на свалку. И если возможно перечень того что можно поставить вместо него, и почему это будет удобней и лучше.
Parazyte; +1 Ответить
7. userrxx 31.01.12 19:23 Сейчас в теме
А например открыть , найти ошибку , исправить , закрыть , информация структуирована , легко обрабатывается визуально и програмно , можно любой девочке по телефону обьяснить , где что исправить.
8. fixin 4253 31.01.12 19:27 Сейчас в теме
(7) бред. CSV - можешь открыть в любом Экселе. Вставлять девочку в информационную структуру - еще больший бред. XML тоже легко визуализируется и редактируется. XML SPY & XML StyleSheets.
(5) я не умею врать. так нагло.
(6) XML. DBF плох тем, что в одном файле можно хранить только одну структуру и тем, что строковые поля ограничены по длине.
9. Арчибальд 2707 31.01.12 19:33 Сейчас в теме
Что-то сильно похоже на бред. Где индексированная таблица, а где текст размеченный. Я вот выгружаю в ДБФ все накладные, выписанные отделом сбыта, а разные подразделения логистики просматривают файл по-разному, причем в части, их касающейся.
А так, развивая "мысль", можно сказать что и Екселем пользуются неудачники. Все ведь в Ворде делается.
tomvlad; tango; hogik; aids-ice; +4 Ответить
10. fixin 4253 31.01.12 19:35 Сейчас в теме
(9) сколько строк в накладных, уважаемый Арчибальд?
Не проще ли индексировать их в ТЗ, а передавать в стандартном XML?
или, если размер данных большой, один раз загружать их в регистр сведений и использовать типовую механику запросов?
Имхо что-то не так в вашем DBF-обмене с накладными.
panosvald29; +1 1 Ответить
11. Арчибальд 2707 31.01.12 19:46 Сейчас в теме
(10) Какая разница, сколько в накладной строк. Каждая строка - это задание на отпуск продукции. Но грузчики-паковщики выполняют их в одной последовательности, кладовщики в другой, а охрана в третьей. Плюс отбор по точкам исполнения...
14. fixin 4253 31.01.12 20:03 Сейчас в теме
(11) Арчи, не уклоняйтесь от темы. Перечитайте мой вопрос. Сколько заданий на отпуск продукции в одном пакете? Если 100-1000, пусть даже 10 000, то быстрее загрузить данные из XML и отсортировать их в 1С. Смысл использовать DBF для индексации? Подумайте о тех, кто придет после вас.

(12) Вот вот, в то время как XML - это просто текст. Совместимо по определению.

(13) лично тебе может и все равно. А вот приходить в контору и разгребать гуано за такими "равнодушными" не очень приятно. Не нужно пользоваться DBF-костылями только потому, что лень изучить XML.
157. Ish_2 1104 04.02.12 10:15 Сейчас в теме
Теперь рассмотрим эту затравку , от которой закряхтели и отминусовались наши ветераны
(думаю , просто не поняли о чем здесь речь) :
Считаю, что в эпоху XML человек, который использует DBF для задач обмена, хранения данных или еще по каким-либо причинам, не связанным непосредственно с тем, что данные ему поставляются только в DBF - неудачник.
Пора выбросить этот формат на свалку истории в теме обмена.
Я понимаю, что в 1С есть функции для работы с DBF, но использовать этот формат для обменов - маразм.


Арчибальд "закряхтел" , что ,дескать, DBF для передачи накладных очень хорош и удобен :
DBF , по его мнению , удачно совмещает возможности хранения, передачи и просмотра и ,дескать, в этом его сила.
Никто не может запретить Арчибальду использовать DBF, дай Бог ему здоровья и 100 лет DBF-обмена в его конторе.
Задумается Арчибальд об XML , только тогда , когда его конфигурация будет обмениваться информацией с десятком других баз и для каждого обмена будет свой формат данных( не только DBF). Мыслишка об какой-то упорядоченности возникнет сама собой : а не сделать ли нам удобный универсальный формат прежде всего для обмена,
а хранение, просмотр и др. функции оставить другим форматам ?
Арчибальд, в этот момент(и не раньше) перечитай пост Фиксина и чего ты тут понаписал в(9),(97) и др.

А вообще, на физическом уровне любой файл обмена - это последовательность битов. Различие состоит в инструментах, которыми пользуется программист. А инструменты определяются (семантической) моделью данных. Эксимель неплох для небольшого дерева. Уже для двумерных массивов слишком расточителен. Ну, а когда появляются перекрестные ссылки он вполне может отдыхать.

И вот "это вота" люди плюсуют...

Жуть. Даже аргументировать не буду.
Я обвиняю тебя в том , что "наукообразным" бредом ты смущаешь неокрепшие умы на ИС.
159. fixin 4253 04.02.12 10:48 Сейчас в теме
(157) во-во. Даже прочитать XML проще, чем dbf, Т.К. это просто текст. Парсер можно самому написать. А попробуй написать парсер DBF. Если бы в 1с не было функций работы с DBF, туго бы пришлось Арчибальду, Кушниру и прочей гоп-компании.
12. TBAPb23 31.01.12 19:51 Сейчас в теме
Ввел в поисковике DBF первые строчки как бы символизируют
DBF — устаревающий формат хранения данных, используемый в качестве одного из стандартных способов хранения и передачи информации системами управления базами данных, электронными таблицами и т. д.

Из выпущенных продуктов формат впервые применялся в dBase II в качестве стандартного формата базы. Точно не известно, использовался ли он где-нибудь ранее.

В новых версиях — dBase III, dBase IV — формат модифицировался и расширялся. В связи с высокой популярностью этих программ были созданы их многочисленные клоны (обычно их называют общим термином xBase), некоторые из которых использовали модифицированные версии DBF. То же самое происходило и с целым рядом прикладных пакетов и библиотек, использовавших DBF в различных целях. Одни их авторы шли по пути добавления новых типов полей, другие — вносили серьёзные расширения. В связи с отсутствием какой-либо официальной стандартизации в настоящее время сложно гарантировать, что разрабатываемая прикладная программа будет писать и читать произвольный DBF-файл, но базовая совместимость всё-таки сохраняется.
13. userrxx 31.01.12 19:52 Сейчас в теме
Это похоже на спор слепого с глухим. Лично мне глубоко фиолетово кому что , больше нравиться , есть задача , а каждый ее решает теми средствами и способами которые ему удобнее. А ставить ярлыки - это не наш метод. У меня есть организация , большой магазин торговый центр. В нем все автоматизировано на програме Бэст. Так головняков и проблем в разы меньше , чем в 1с. Это же не значит , что все работники лохи , потому что они 1с и близко видеть не хотят. каждый выбирает , что ему больше нравится.
15. userrxx 31.01.12 20:06 Сейчас в теме
Пошел срач . Пора кидаться тапками пока модер не пришел.
Дмитрий74Чел; +1 Ответить
16. ssg10 31.01.12 22:13 Сейчас в теме
Контрагенты постоянно требуют выгрузки документов в формате dbf. Причем сам формат меняется раз в год
18. ANDRU48DOP 5 01.02.12 00:15 Сейчас в теме
Кто чем хочет, тот тем и пользуется - главное результат
19. 1C82 46 01.02.12 01:36 Сейчас в теме
А то что аптечные конторы все поголовно пользуются форматом dbf при пересылке данных - так это точно неудачники, или у них стоит именно "это" устаревшее программное обеспечение. Бедные их поставщики и покупатели а так же весь штат "программистов" и 1C-ников у них работающих!
46. fixin 4253 01.02.12 10:18 Сейчас в теме
(19) если что-то работает, ломать не стоит, почему бы и не поддерживать. Но писать сейчас обмены на DBF - это признак маразма. Допускаю, что аптеки привыкли пересылать в DBF, у них под это уже заточено, менять не надо.

(16) видимо у контрагентов программисты-маразматики. XML удобнее DBF, это факт.
(17) если он действительно свободен, он выберет XML. Но видимо он не умеет юзать XML, потому выбирает DBF, потому неудачник. Преимуществ у DBF для обмена нет перед XML.
(21) да. ибо XML лучше чем текст.
(20) скорее это мои эмоции. Смешит, когда программисты советуют писать обмены в DBF в эпоху XML. Проскочил такой совет в одной из веток.
20. Ягг 495 01.02.12 07:04 Сейчас в теме
бессмысленная тема. спам.
21. AlStorm1 01.02.12 07:22 Сейчас в теме
А что такое DBF? :)

А если я пользую txt - вообще лох, наверное?
22. пользователь 01.02.12 09:06
Сообщение было скрыто модератором.
...
23. пользователь 01.02.12 09:06
Сообщение было скрыто модератором.
...
24. пользователь 01.02.12 09:07
Сообщение было скрыто модератором.
...
25. пользователь 01.02.12 09:07
Сообщение было скрыто модератором.
...
26. пользователь 01.02.12 09:07
Сообщение было скрыто модератором.
...
27. пользователь 01.02.12 09:08
Сообщение было скрыто модератором.
...
28. пользователь 01.02.12 09:08
Сообщение было скрыто модератором.
...
29. пользователь 01.02.12 09:08
Сообщение было скрыто модератором.
...
30. пользователь 01.02.12 09:09
Сообщение было скрыто модератором.
...
31. пользователь 01.02.12 09:09
Сообщение было скрыто модератором.
...
32. пользователь 01.02.12 09:10
Сообщение было скрыто модератором.
...
33. пользователь 01.02.12 09:11
Сообщение было скрыто модератором.
...
34. пользователь 01.02.12 09:11
Сообщение было скрыто модератором.
...
35. пользователь 01.02.12 09:13
Сообщение было скрыто модератором.
...
36. пользователь 01.02.12 09:19
Сообщение было скрыто модератором.
...
37. пользователь 01.02.12 09:19
Сообщение было скрыто модератором.
...
38. пользователь 01.02.12 09:19
Сообщение было скрыто модератором.
...
39. пользователь 01.02.12 09:20
Сообщение было скрыто модератором.
...
40. пользователь 01.02.12 09:20
Сообщение было скрыто модератором.
...
41. пользователь 01.02.12 09:22
Сообщение было скрыто модератором.
...
42. пользователь 01.02.12 09:22
Сообщение было скрыто модератором.
...
43. пользователь 01.02.12 09:23
Сообщение было скрыто модератором.
...
44. пользователь 01.02.12 09:23
Сообщение было скрыто модератором.
...
45. пользователь 01.02.12 09:24
Сообщение было скрыто модератором.
...
47. TsMGeorg 01.02.12 12:37 Сейчас в теме
А у меня была такая ситуацию, выгружал зарплатные ведомости для банков, и они требовали, чтобы выгружал именно в формате DBF, структуру и описание файла отправили даже. Считаю что DBF для переноса небольших объемов данных очень даже удобен. Или например в банк-клиентах до сих пор тоже используется текстовый форма и до сих пор успешно применяется. Дай бог конечно, чтобы XML стал повсеместно использоваться))
48. fixin 4253 01.02.12 13:01 Сейчас в теме
(47) текстовый формат и DBF - пережитки прошлого. Если формат задан, то конечно же, надо под него подстраиваться. Но если есть свобода выбора и программист использует текст или DBF, или даже CSV - это бред.
49. cool.vlad4 2 01.02.12 13:14 Сейчас в теме
Предлагаю ввести отстрел тех, кто до сих пор использует dbf. Потом мы доберемся и до тех, кто использует xml.
Spi1y; oleg974; AndrewAks; astonvilla; Ish_2; support; vishiv; vkr; Nelli_A86; hogik; Арчибальд; ula1c; +12 Ответить
50. anitakh 01.02.12 14:22 Сейчас в теме
Каждый формат файла удобен для определенных целей, сбербанк до сих пор не отказался от использования формата DBF, точно так же как 7.7 файловая идет тоже в DBF, возьмем тот же пенсионный фонд он тоже работает в этом формате. И потом формат удобен для определенных целей. Поэтому сколько программистов столько и мнений
52. fixin 4253 01.02.12 14:48 Сейчас в теме
(50) не отказался только по причине сложившейся практики. преимуществ у DBF формата для обмена данными нет. Если есть, назовите. Для каких определенных целей?
(51) я уже говорил. Если DBF используется вынужденно, т.к. другая сторона его хочет, это одно. А если программист добровольно юзает DBF вместо XML, он лузер.
51. romansun 193 01.02.12 14:33 Сейчас в теме
гы, прикольная тема )))

последний раз юзал дбф... эээ... лет 7 назад

Но только по той причине, что сейчас он не используется ни одним из клиентов, с которыми я пересекаюсь. И, кстати, xml у них тоже пока нет, к сожалению. Есть xls, txt.

Касательно устареваемости - прям за спиной сидит товарисч, который страдает работает с AS400 (AS400, AS400). И вот людям по другую сторону базы ваще пофиг - работает и ладно.

Чаще всего причины использования тех или иных технологий лежат в плоскости клиентов.
53. MaxDavid 127 01.02.12 14:59 Сейчас в теме
Тема - спровоцированный холивар, место ей в Life.
Набивать $m можно и более продуктивно.
hogik; fishca; +2 Ответить
56. fixin 4253 01.02.12 15:09 Сейчас в теме
(53) возможно. пусть переместят в Лайф. по сути я уже писал, что это мои эмоции.
(54) у вас Пользователи смотрят DBF? Клево. XML прекрасно открывается в IE
54. Sergius79 01.02.12 15:02 Сейчас в теме
А чем это XML то удобней? попросите кого-то со стороны прочитать что там в 1056 строке данных?? DBF и в Экселе открывается, который стоит у 99% пользователей а XML SPY & XML StyleSheets у кого стоит? Поднимите руки. Или всем по почте отправлять еще и прогу и рассказывать как ее устанавливать, и как открывать.

XML новый формат, он только развивается и за ним будущее согласен, это как к примеру уже давно есть виндовс7 и виндовс виста, но вот пользователей на них не так-то и много, народ до сих пор на ХР сидит. Потому что НЕУДОБНО с этими новыми операционками, а переходят только по принуждению, так же и с XML хорошо но не удобно.
55. anitakh 01.02.12 15:05 Сейчас в теме
XML мне лично тот формат не нравится просматриваться стандартно только через инет-экслуэр, для корректирвки в ручном режиме нужно лезть и открывать через блокнот, хорошо если бухгалтер сообразительный а если нет то ходишь и сама правишь каждый раз
57. Alex_Japanese_Student 454 01.02.12 15:23 Сейчас в теме
Неудачники кто дбф использует?
Мне доводилось писать обмены с иностранными компаниями среднего размера
Так вот почти все использовали для обмена txt

Даже если просили Excel - так присылали все равно csv что есть тот же самый txt
Так что - реальность ваши мысли никак не подтверждает.
59. fixin 4253 01.02.12 16:39 Сейчас в теме
(57)(58) я говорю немного о другом контексте, повторю в 10-й раз.
если у программиста есть выбор и он юзает DBF вместо XML, он неудачник.
Если в какой-то конторе сложилась практика юзать DBF (т.к. это старый формат), это нормально. Но если программист сам выбирает DBF, это ....
60. vasilykushnir 63 01.02.12 16:47 Сейчас в теме
(59) Ты действительно настолько глуп, или специально прикидываешься?
У меня несколько форматов обмена документами с клиентурой: эксель, ммо, дбф и твой любимый XML. Так вот неудачником считаю того, кто не может ни в одном УДОБНОМ ДЛЯ КЛИЕНТА формате скинуть документ. Все остальное - твои личные эмоции (при том весьма не здоровые...)
astonvilla; Nelli_A86; hogik; fishca; +4 Ответить
64. fixin 4253 01.02.12 18:05 Сейчас в теме
(60) Вася, я уже объяснял 10 раз, если Клиент диктует формат, тогда ноу проблем - хоть Луну с неба. Но если вы по своей инициативе юзаете ДБФ, простите...
(61) Неудачник - потому что использует старое, неудобное, но привычное и не стремится познать новое, удобное, но непривычное. Это уже черта характера. Потом на его место приходит продвинутый программист и вынужден страдать над DBF только потому, что старому было тяжело изучить XML.
(62) Вот о том и речь. Если может и выбирает XML - неудачник. Даже если бабло загребает лопатой, ибо ленив.
(63) Пардон, вы не поняли о чем речь. Вы используете DBF как платформу базы данных 1с77? Тема не об этом.
65. vasilykushnir 63 01.02.12 18:20 Сейчас в теме
(64) Чем лучше xml по сравнению с dbf для однородных данных? Чем он удобнее в 7-ке? - это в 8-ке он штатно включен, а в 7-ке либо ручками (что я и сделал), либо через опу с помощью ВК. Я уже не говорю об удобстве просмотра и , при необходимости, редактирования итогового файла ДБФ редакторов/вьюверов хоть опой жри. А если нет винды 7-й? Да на нее у меня аллергия, как и на их сранный ИЕ.
bazil795; +1 Ответить
66. fixin 4253 01.02.12 18:46 Сейчас в теме
(65) вы ретроград батенька. Потому и Win 7 не перевариваете. В 7-ке v7plus замечательно юзает XML. В крайнем случае можно юзать парсер от винды, доступный как ком-объект, если объемы не большие. Можно ручками и не писать.
К тому же 7-ка - это программа пятилетней давности, речь идет о тех, кто на острие прогресса. Вы с ней в предмет обсуждения ветки не вписываетесь. Могу уточнить название ветки - те восьмерочники, которые юзают DBF, вместо XML - неудачники, чтобы семерочникам не было обидно.

а насчет преимуществ XML я уже писал, повторю спецом для вас. В DBF нужно фиксировать набор полей, только одна структура на файл, формат не текстовый, а двоичный, строки ограниченной длины.

И потом даже для однородных данных XML легко позволяет включить в пакет его описание - типо метаданных - время выгрузки, автора, контрольную сумму пакета и т.п. вкусности, которые в DBF будут занимать лишнюю колонку или потребуют отдельного файла.
83. vasilykushnir 63 02.02.12 09:40 Сейчас в теме
(66) 1. Я не ретроград , но переходить на прожорливую 7-ку только ради свистелок пердело я тоже не пацан и украшательства меня в последнюю очередь волнуют.
2. "В 7-ке v7plus замечательно юзает XML." такое только может заявлять человек не рабовший с v7plus - нихыра замечательного она не делает. Ну то что ты аж ни разу не практик - это я давно знаю.
(69) "я вам из пальца понавысасываю столько же недостатков у DBF" - теперь понятно откуда ты берешь аргументы. Сосать можешь что хочешь, но не надо с этим лазить в тематические форумы (здесь форум 1С если не знал).
84. fixin 4253 02.02.12 10:33 Сейчас в теме
(83) ну за пять лет я успел поменять контору, где уже юзают восьмерку, а не продолжают сопровождать семерку. Ничего против семеры не имею, но она отмирает. Это факт.
Что именно у Вас не получилось в V7Plus.
По поводу остальных ваших сентенций - это форум по 1С, как вы выразились, поэтому комментировать ваши ассоциации не буду, оставлю Фрейду. ;-)
(80) Простите, а зачем его смотреть? В 1С в крайнем случае смотрите. В блокноте, в IE.
(76) Какая разница, DOM или последовательное чтение? Я и последовательным чтением могу получить нужные мне данные? Кто сказал что мне нужно выборочно читать? Я прочитаю все и извлеку все.
(73) Для таких баз, как KLADR лучше использовать CSV, или я что-то не понимаю?

И потом, 80% обменов идут с объемами данных меньше 10 Мб. Но тем не менее 50% дятлов пишут такие обмены на DBF.
Возможно, данные с объемами в несколько гигов имеет смысл передавать вообще в двоичном виде, а возможно достаточно банальной архивации.

По поводу производительности, чтобы начать отстрел дятлов, сообщу следующее - все обмены в РИБ 1C идут через XML, в том числе и изменения конфы (в двоичном виде внутри XML). Попробуйте написать это на DBF. Думаю, этим соображением вопрос по производительности закрыт. Т.к. РИБ в 1С работает и дышит на ура на тысячах предприятий.
85. pumbaE 02.02.12 12:35 Сейчас в теме
(84) Почитайте про разработки googl-а о замене простого текстового протокола http на бинарный, даже от такой простой замены предполагают выгоду на каждом коннекте и тут не 10 мб а меньше, но все равно выгода есть.

xml хорош, когда заранее неизвестно какие будут данные (попытки валидации, создания xsd схем, это как раз попытки).

Неудачником можно стать, когда летом на голову сосулька с крыши упадет, а использование или не использования DBF это не признак неудачи.

Тема холивар, fixin как истинная женщина доводов не видит, то что вбил себе в голову на том и стоит.
Nelli_A86; vasilykushnir; ula1c; +3 Ответить
87. cool.vlad4 2 02.02.12 13:15 Сейчас в теме
(85)
Почитайте про разработки googl-а о замене простого текстового протокола http на бинарный
Это вы про spdy? Да, чего уж далеко ходить, они себе и замену xml сделали - protobuf. Твиттер кажется отказался потом от xml в пользу protobuf и подсчитали скорость обмена возросла в разы, а объем передаваемых данных уменьшился раз в 10.
95. cool.vlad4 2 02.02.12 16:21 Сейчас в теме
(87) 1. Я не тебе отвечал. Но раз уж речь об этом тогда: 2. Какие такие другие задачи решал твиттер и гугль, когда применяли protobuf для обмена информацией между серверами? Ты не в курсе этого, - не знаем, но имеем мнение. 3. Да еще - я не крещенный. 4. Ты ни разу не привел никаких нормальных доводов. Просто в твоей задаче наверное лучше xml, но ты решил, что он круче во всех случаях. Тебе указывают эти случаи, а ты говоришь, а я ж не про это имел ввиду.
96. vasilykushnir 63 02.02.12 16:33 Сейчас в теме
(95) Да какие доводы?! Демагогия в чистом виде, по примеру:
Сначала идет вброс:
на улице погода (и все! - никакой конкретики)

Потом на основе вброса "гениальное" утверждение:
Я прав! - ведь никто не опроверг моего утверждения. А вот вы говорите хорошая погода? - фигню несете! - я имел в виду совсем другое. А вы говорите плохая? - так вы вообще такой-рассякой - я о плохой ни слова не говорил.

Вот так он ведет все диспуты. Может хатит кормить троля? Честно говоря, не знаю зачем ресурсу такое...., изгнанное с позором отовсюду откуда только можно (дубовый форум не в счет - помойка редкая).
pumbaE; vkr; +2 Ответить
99. fixin 4253 02.02.12 21:39 Сейчас в теме
(95) не в моей задаче, а в 90% задач обмена
(96) софистика. Не нравится - не обсуждайте. я высказал эмоцию, что меня бесят программисты, которые юзают для обмена не в масштабах РосАтома DBF вместо XML. И объяснил почему. Возразить по факту нечего, но почему-то ДБФ защищуют.
(97) Мы не про вообще, а про задачи обмена. И в любом файле обмена по правилам обмена (Конвертация данных) есть до фига перекрестных ссылок. Курите в сторону тега НПП. Избыточность убирается архивацией. (как это делает 1с в РИБ).

(98) А давайте все же сабж обсуждать, а не приписывать мне то, чего у меня нет.

Резюмируя - DBF для большинства задач обмена - морально устарел. Кто его юзает - тот лодырь. А потом тем, кто придет на их место придется расхлебывать этот "антиквариат".
105. vasilykushnir 63 03.02.12 09:47 Сейчас в теме
(99) "я высказал эмоцию, что меня бесят программисты," - это потому, что ты не программист. А "Не нравится - не обсуждайте" - тут ты не прав. Это не твой личный сайт. И своими дебильными на грани маразма ветками ты оскорбляешь как самих программистов на ИС так и само звание программиста.
"А давайте все же сабж обсуждать" - какой сабж? Что обсуждать - результат твоего психического обострения? Так тебе не на ИС надо, а в психушку - там не только Гении1С в огромном количестве, но и Наполеоны, Иисусики - в общем привычный для тебя контингент.
hogik; Nelli_A86; +2 1 Ответить
106. fixin 4253 03.02.12 10:28 Сейчас в теме
(105) Василий, не приписывайте свое имхо всему Инфостарту.
(104) XML можно было использовать и до КД, вместо DBF. Хотя сам, каюсь, использовал текстовые файлы, что-то типо XML, но самодельное. ;-)
108. vasilykushnir 63 03.02.12 11:25 Сейчас в теме
(106) Это имхо всего интернета - ты уже всюду засветился и успел нагадить.
(107) А ты попробуй втолковать это этому психу - а я понаблюдаю, как это у тебя получится. Еще ни разу не видел, как валится стена от кинутой пригоршни гороха.
88. vasilykushnir 63 02.02.12 13:42 Сейчас в теме
(85) За суку ты очень тонко подметил. Не удержался от плюсика. ;-)
62. Alex_Japanese_Student 454 01.02.12 16:57 Сейчас в теме
(59) fixin,
иногда программист может сам выбирать
а очень часто не может
мы же не сферического программиста в вакууме обсуждаем, правда?

Считать ли неудачником программиста, работающего в солидной и большой и уважаемой компании и поднимающего хорошие деньги??
58. d.alexandr 406 01.02.12 16:09 Сейчас в теме
Наверное, автор темы не умеет работать в 1с с DBF, вот и пишет что кто пользуется DBF - неудачники. И вообще, если бы вы написали: "DBF-пережиток старого, пользуйтесь XML", а не "DBF юзают неудачники", то тема воспринималась бы по другом, а так просто кажется что у автора присутствует некое самолюбие, мол, я использую XML, а кто использует DBF - неудачники.
61. d.alexandr 406 01.02.12 16:52 Сейчас в теме
возможно вы и правы, возможно XML - лучше использовать чем DBF. Меня больше всего смущает "если программист сам выбирает DBF, то он НЕУДАЧНИК". у меня к вам вопрос, почему неудачник? разница ведь в использовании не так и велика.
63. goga66 01.02.12 17:12 Сейчас в теме
Считаю, что в эпоху XML человек, который использует DBF для задач обмена, хранения данных или еще по каким-либо причинам, не связанным непосредственно с тем, что данные ему поставляются только в DBF - неудачник.
Пора выбросить этот формат на свалку истории в теме обмена.
Я понимаю, что в 1С есть функции для работы с DBF, но использовать этот формат для обменов - маразм.


я вот лично использую дбф на 2 5 гиговых базах в терминале, потому что оно в моем случае быстрей работает чем СКЛ.
67. d.alexandr 406 01.02.12 18:49 Сейчас в теме
fixin, а что по поводу производительности, что лучше XML или DBF и примерно во сколько раз?
69. fixin 4253 01.02.12 19:27 Сейчас в теме
(67) производительность чего, простите? Если данные используются для обмена, то не суть какой объем. Сжатие убивает излишнюю раздутость, а чтение из DBF и XML одинаково по скорости на одинаковых объемах (примерно одинаково).
DBF можно использовать для чтения по индексам, но это уже из оперы прикручивания к 1С маленькой СУБД, и явно есть решения лучше чем DBF, тот же MYSQL


(68) я вам из пальца понавысасываю столько же недостатков у DBF. Размер легко решается через сжатие в ZIP. Неоднозначность моделирования - это не из нашей песни, вы бы хоть читали что пишете. Вы сами создаете модель обмена. Тут нет неоднозначности. Нам естественный язык не нужен.
70. d.alexandr 406 01.02.12 19:35 Сейчас в теме
(69) fixin, я имел ввиду производительность чтения данных.
79. MaxDavid 127 02.02.12 00:17 Сейчас в теме
(69)
я вам из пальца понавысасываю столько же недостатков у DBF.

Валяйте, сделайте это. По крайней мере, это будет убедительней, чем просто вешать ярлыки на всех, кто по работе встречается с dbf.
Размер легко решается через сжатие в ZIP.

Это не преимущество. Программист, сумевший сжать xml в zip, точно так же легко разберется и с dbf, если приспичит.
Неоднозначность моделирования - это не из нашей песни, вы бы хоть читали что пишете. Вы сами создаете модель обмена. Тут нет неоднозначности. Нам естественный язык не нужен.

Я правильно понимаю ваши слова, что все обмены данными, которые вы, как программист, обслуживаете - однозначного формата и вы этот формат назначаете обеспечиваете?
68. MaxDavid 127 01.02.12 19:21 Сейчас в теме
Недостатки xml:
Синтаксис XML избыточен.[8]
Размер XML-документа существенно больше бинарного представления тех же данных. В грубых оценках величину этого фактора принимают за 1 порядок (в 10 раз).
Размер XML-документа существенно больше, чем документа в альтернативных текстовых форматах передачи данных (например JSON[4], YAML, Protocol Buffers) и особенно в форматах данных, оптимизированных для конкретного случая использования.
Избыточность XML может повлиять на эффективность приложения. Возрастает стоимость хранения, обработки и передачи данных.
XML содержит метаданные (об именах полей, классов, вложенности структур), и одновременно XML позиционируется как язык взаимодействия открытых систем. При передаче между системами большого количества объектов одного типа (одной структуры), передавать метаданные повторно нет смысла, хотя они содержатся в каждом экземпляре XML описания.
Для большого количества задач не нужна вся мощь синтаксиса XML и можно использовать значительно более простые и производительные решения.[9]
Неоднозначность моделирования.
Нет общепринятой методологии для моделирования данных в XML, в то время как для реляционной модели и объектно-ориентированной такие средства разработаны и базируются на реляционной алгебре, системном подходе и системном анализе.
В природе есть множество объектов и явлений, для описания которых разные структуры данных (сетевая, реляционная, иерархическая) являются естественными, и отображение объекта в неестественную для него модель является болезненным для его сути. В случае с реляционной и иерархической моделями определены процедуры декомпозиции, обеспечивающие относительную однозначность, чего нельзя сказать о сетевой модели.[10]
В результате большой гибкости языка и отсутствия строгих ограничений, одна и та же структура может быть представлена множеством способов (различными разработчиками), например, значение может быть записано как атрибут тега или как тело тега и т. д. Например:
<a b="1" c="1"/>
<a>1<c>1</c></a>
<a><b value="1"/><c value="1"/></a>
<a><fields b="1" c="1"/></a> и т. д.[11]
Поддержка многих языков в именовании тегов дает возможность назвать, например вес русским словом, в таком случае компьютер никак не сможет установить соответствия этого поля с полем weight в англоязычной версии программы и с полями в версиях модели объекта на множестве других языков.
XML не содержит встроенной в язык поддержки типов данных. В нём нет строгой типизации, то есть понятий «целых чисел», «строк», «дат», «булевых значений» и т. д.
Иерархическая модель данных, предлагаемая XML, ограничена по сравнению с реляционной моделью и объектно-ориентированными графами и сетевой моделью данных.
Выражение неиерархических данных (например графов) требует дополнительных усилий
Кристофер Дейт, специалист в области реляционных баз данных, автор классического учебника «An Introduction to Database Systems», отмечал, что «…XML является попыткой заново изобрести иерархические базы данных…»[12] (в 1980-е года иерархические базы данных были вытеснены реляционными базами данных).
Пространства имён XML сложно использовать и их сложно реализовывать в XML-парсерах.
Существуют другие, обладающие сходными с XML возможностями, текстовые форматы данных, которые обладают более высоким удобством чтения человеком (YAML, JSON, SweetXML[13], XF[14]).
Показать

Вопрос: как назвать человека, работающего с форматом с ТАКИМ количеством недостатков?
bazil795; nmf; Арчибальд; +3 Ответить
89. Арчибальд 2707 02.02.12 14:57 Сейчас в теме
(68)
Вопрос: как назвать человека, работающего с форматом с ТАКИМ количеством недостатков?
Работать/не работать с чем-либо - вообще не относится к удачливости. А вот агрессивно-некомпетентно отстаивать отстой нечто, увиденное в рекламе, в противовес модели, признанной искушенными профессионалами, только потому, что это нечто новее - это близко к диагнозу. В анамнезе еще просматривается чистопородновосьмерочное поражение генотипа, заставляющее пациента панически опасаться любых структур данных кроме дерева.
Нормальному человеку свойственно использовать ровно ту структуру данных, которая требуется в конкретной ситуации. Скажем, формат ".НКХ" (НепришейКобылеХвост). Совсем новый. Ни разу не использованный.
Nelli_A86; MaxDavid; vkr; vasilykushnir; +4 Ответить
90. vasilykushnir 63 02.02.12 15:44 Сейчас в теме
(89) Отлично! А мне формат NKX определенно понравился. (Хотя более старый NPPR, он же сокращенно NPR, тоже прикольный ;-) )
164. Ish_2 1104 04.02.12 13:33 Сейчас в теме
В (68) перечислены недостатки XML и в конце эффектный вопрос :
Вопрос: как назвать человека, работающего с форматом с ТАКИМ количеством недостатков?

Вы мыслите рельсом .(с) Штирлиц


Почему же (68) - это "рельс" ?
Потому что все форматы обладают недостатками ( И распространенные , и "не очень", и даже DBF).
Дело не в них.
А дело в преимуществах того или иного формата.
Причина чрезвычайно широкого распространения XML - в его универсальности.
Возможность использовать для обмена между любыми информационными базами один признанный всеми формат
перекрывает любые его недостатки.
Разжевывать дальше - стесняюсь.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот