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

Внимание! Тема закрыта. Добавлять сообщения в закрытую тему запрещено.
1. fixin 4252 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 4252 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. Арчибальд 2706 06.02.12 14:58 Сейчас в теме
(255)
Потом фельдкурат пустился в откровенность: рассказал, что он должен за верховые сапоги, за хлыст и седло, что несколько лет тому назад у него был триппер и он лечил его марганцовкой.
258. vasilykushnir 63 06.02.12 15:03 Сейчас в теме
(255) Похоже его действительно прихватило. Хотя... принимать этого человека на веру... - я люто извиняюсь. Но в той теме он хотя бы вел себя почти как нормальный человек. И кстати (256) - пинать его не хотелось совсем. Все в меру его адекватности (в той ветке) с пониманием отнеслись к его проблеме.
247. tango 506 06.02.12 12:00 Сейчас в теме
(245) "Потому что ты - чистый одноэснег". Протестую! Ты ведь не называешь его собакой!!
248. Арчибальд 2706 06.02.12 12:03 Сейчас в теме
(247) То есть надо было сказать "грязный одноэснег"?
274. viktor777 06.02.12 21:06 Сейчас в теме
(1) fixin,
НДА, сравнение однако, ДБФ и XML, разные форматы, разные потребности. Нож убивает так же быстро как и пистолет, зачем извращаться если хватает функционала ДБФ?
275. fixin 4252 06.02.12 21:09 Сейчас в теме
(274) перечитай тему еще раз. XML перекрывает потребности DBF, смысла в использовании DBF не вижу. На худой конец CSV, если есть озабоченность размерами пакета и лень зиповать. Но DBF? Смысл?
276. tango 506 06.02.12 21:15 Сейчас в теме
(275) просто перечитай еще раз: "смысла в использовании DBF не вижу", и, наверное, действительно, хватит об этом
2. Гость 31.01.12 19:10
А какая разница? В чем проблема?
4. fixin 4252 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 4252 31.01.12 19:27 Сейчас в теме
(7) бред. CSV - можешь открыть в любом Экселе. Вставлять девочку в информационную структуру - еще больший бред. XML тоже легко визуализируется и редактируется. XML SPY & XML StyleSheets.
(5) я не умею врать. так нагло.
(6) XML. DBF плох тем, что в одном файле можно хранить только одну структуру и тем, что строковые поля ограничены по длине.
9. Арчибальд 2706 31.01.12 19:33 Сейчас в теме
Что-то сильно похоже на бред. Где индексированная таблица, а где текст размеченный. Я вот выгружаю в ДБФ все накладные, выписанные отделом сбыта, а разные подразделения логистики просматривают файл по-разному, причем в части, их касающейся.
А так, развивая "мысль", можно сказать что и Екселем пользуются неудачники. Все ведь в Ворде делается.
tomvlad; tango; hogik; aids-ice; +4 Ответить
10. fixin 4252 31.01.12 19:35 Сейчас в теме
(9) сколько строк в накладных, уважаемый Арчибальд?
Не проще ли индексировать их в ТЗ, а передавать в стандартном XML?
или, если размер данных большой, один раз загружать их в регистр сведений и использовать типовую механику запросов?
Имхо что-то не так в вашем DBF-обмене с накладными.
panosvald29; +1 1 Ответить
11. Арчибальд 2706 31.01.12 19:46 Сейчас в теме
(10) Какая разница, сколько в накладной строк. Каждая строка - это задание на отпуск продукции. Но грузчики-паковщики выполняют их в одной последовательности, кладовщики в другой, а охрана в третьей. Плюс отбор по точкам исполнения...
14. fixin 4252 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 4252 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 4252 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 4252 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 4252 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 4252 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 4252 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 4252 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 4252 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 4252 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 4252 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 4252 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 4252 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. Арчибальд 2706 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 - в его универсальности.
Возможность использовать для обмена между любыми информационными базами один признанный всеми формат
перекрывает любые его недостатки.
Разжевывать дальше - стесняюсь.
Оставьте свое сообщение
Вакансии
Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)

Программист 1С
Москва
зарплата от 250 000 руб.
Полный день