Поиск:

Ответ в темуСоздание новой темы Создание опроса
> DBF файл в виде строки -> Table 
V
    Опции темы
MouseHouse
Дата 22.12.2006, 12:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мышкин Дом



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 28.3.2006

Репутация: нет
Всего: нет



Имеется DBF файл в виде строки в памяти (на диске этого файла нет, создается и  живет  только в памяти)

но со строкой работать как то не удобно smile

хотелось записать эту строку в Rx компонент RxMemoryData  (или в Тable) а вот как?
 
PM MAIL   Вверх
Rodman
Дата 22.12.2006, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 22
Всего: 122



MouseHouse, кликаешь дважды на него...

Открывается окно в котором нажимаешь Ctrl+N... заполняешь поля и потом к ним обращаешься по имени..

Добавлено @ 12:12 
вот кусок из моей проги...

Код

procedure TFrmShowOrg.FormActivate(Sender: TObject);
var ws:IIS;
    I: Integer;
    NameNode: IXMLNode;
    XMLDocument: TXMLDocument;
begin
  ws := (HTTPRIOIIS AS IIS);
  XMLDocument := TXMLDocument.Create(Self);
  try
    XMLDocument.XML.Text:=DeCrypter(ws.GetOrganisationList('Parameters'));
    NullStrictConvert := False;
    NullAsStringValue := '';
    XMLDocument.Active:=True;
    NameNode:=XMLDocument.DocumentElement;
    JvMemoryData.Active:=True;
    JvMemoryData.EmptyTable;
    for i := 0 to NameNode.ChildNodes.Count - 1 do
    begin
      JvMemoryData.Append;
      JvMemoryData.FieldByName('ID').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['IDOrg'];
      JvMemoryData.FieldByName('OrgName').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['NameOrg'];
      JvMemoryData.FieldByName('Address1').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['Address1'];
      JvMemoryData.FieldByName('Address2').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['Address2'];
      JvMemoryData.FieldByName('Address3').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['Address3'];
      JvMemoryData.FieldByName('Address4').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['Address4'];
      JvMemoryData.FieldByName('Country').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['Country'];
      JvMemoryData.FieldByName('Region').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['Region'];
      JvMemoryData.FieldByName('City').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['City'];
      JvMemoryData.FieldByName('PostCode').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['PostCode'];
      JvMemoryData.FieldByName('Phone').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['Phone'];
      JvMemoryData.FieldByName('Fax').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['Fax'];
      JvMemoryData.FieldByName('WebSite').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['WebSite'];
      JvMemoryData.FieldByName('Category').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['Category'];
      JvMemoryData.FieldByName('Currency').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['Currency'];
      JvMemoryData.FieldByName('Language').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['Language'];
      JvMemoryData.FieldByName('OrgDesc').Value:=NameNode.ChildNodes.Nodes[i].ChildValues['OrgDesc'];
      JvMemoryData.Post;
    end;
  finally
    XMLDocument.Free;
  en

PM MAIL WWW Skype GTalk YIM MSN   Вверх
Mephisto
Дата 22.12.2006, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Волкъ
***


Профиль
Группа: Завсегдатай
Сообщений: 1818
Регистрация: 27.8.2003
Где: Питер

Репутация: нет
Всего: 34



Rodman, а это что такое - JvMemoryData?

Добавлено @ 12:53 
И че такое IIS. Что за тип?
PM   Вверх
Rodman
Дата 22.12.2006, 13:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 22
Всего: 122



Mephisto, это компонент подобный RxMemoryData (из библиотеки JEDI)...


Цитата(Mephisto @  22.12.2006,  11:53 Найти цитируемый пост)
И че такое IIS. Что за тип? 

Это переменная Web-Service'а... она передает XML файл...

Я просто хотел показать метод добавления... за одно и парсинг выложил...
PM MAIL WWW Skype GTalk YIM MSN   Вверх
SergeBS
Дата 22.12.2006, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1111
Регистрация: 10.6.2005
Где: Владимир

Репутация: 11
Всего: 22



MouseHouse, 
Цитата
Имеется DBF файл в виде строки в памяти 

А это как?
PM MAIL   Вверх
Rodman
Дата 22.12.2006, 13:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 22
Всего: 122



SergeBS, ну просто переменной передается строка формата DBF...
PM MAIL WWW Skype GTalk YIM MSN   Вверх
SergeBS
Дата 22.12.2006, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1111
Регистрация: 10.6.2005
Где: Владимир

Репутация: 11
Всего: 22



Rodman, 
Цитата
ну просто переменной передается строка формата DBF... 

А ЭТО как? Формат DBF-файла представляешь? Вижу что нет. У него между прочим заголовок есть весьма специфического формата.
PM MAIL   Вверх
Rodman
Дата 22.12.2006, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 22
Всего: 122



SergeBS, забей столько думать...

Ну просто он базу как то передает (данные), как абсолютно не важно...

Вопрос был в том как все загнать в MemoryData...
PM MAIL WWW Skype GTalk YIM MSN   Вверх
MouseHouse
Дата 23.12.2006, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мышкин Дом



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 28.3.2006

Репутация: нет
Всего: нет



SergeBS и что заголовок? при чем тут заголовок dbf файла ?

Rodman прав... просто переменной передается строка формата DBF...


и всетаки из приведенного выше примера я не очень понял как.... smile 



Это сообщение отредактировал(а) MouseHouse - 23.12.2006, 11:10
PM MAIL   Вверх
Rodman
Дата 23.12.2006, 13:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 22
Всего: 122



MouseHouse, давай по очереди:

1. Кидаешь компоненты RxMemoryData, DataSource (для связывания например с DBGrid'ом) на форму;
2. Кликаешь дважды по RxMemoryData - откроется окошко;
3. В окошке правой кнопкой мыши и выбираешь New Field (или нажимаешь Ctrl+N) - появляется окно для формирования полей.
4. В окне формирования полей в первом поле пишешь имя поля, и потом еще надо указать формат его. И нажимаешь ОК;

таким образом создаешь нужное кол-во полей....

дальше теперь в проге пишешь

Код

      RxMemoryData.Active:=True;
      RxMemoryData.EmptyTable;
      RxMemoryData.Append;
      RxMemoryData.FieldByName('ID').Value:='Field';//здесь ID - имя параметра, a Field - добавляемое данное 
      RxMemoryData.FieldByName('OrgName').Value:='Salo';
      RxMemoryData.Post;      //эквивалентно ExecSQL, т.е. данные загоняются в компонент


ну если теперь не понятно, спрашивай по пунктам!!! smile  smile 

и сюда заглянь... моя похожая тема

PM MAIL WWW Skype GTalk YIM MSN   Вверх
MouseHouse
Дата 23.12.2006, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мышкин Дом



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 28.3.2006

Репутация: нет
Всего: нет



Как создать в RxMemoryData поля это понятно и как туда писать тоже
мне не понятно что писать smile


подрозумевается что имеется переменная назовем  ее StrDbfile типа стринг 

StrDbfile:='длинная сторока dbf файла'

RxMemoryData.FieldByName('OrgName').Value:=??????

насколько я понимаю в предыдуших примерах для XML файла используется TXMLDocument парсер но для DBF файла (строки в моем случае) тоже ведь что то нужно или я не понимаю что то?


PM MAIL   Вверх
Rodman
Дата 23.12.2006, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 22
Всего: 122



MouseHouse, выложи пример содержимого StrDbfile - посмотрим че с ним сделать можно....
PM MAIL WWW Skype GTalk YIM MSN   Вверх
SergeBS
Дата 25.12.2006, 10:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1111
Регистрация: 10.6.2005
Где: Владимир

Репутация: 11
Всего: 22



MouseHouse, 
Цитата
SergeBS и что заголовок? при чем тут заголовок dbf файла ?

При том, что в заголовке - описание названий, порядка следования, типа и размера полей.
А дальше в dbf-нике эти поля идут без разделителей. А поэтому "строка типа DBF" - это "сферический конь в вакууме". Матчасть учить надо ;). Кстати, в XML тоже есть описания форматов полей.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.1310 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.