|
v7: Работа с dbf | ☑ | ||
---|---|---|---|---|
0
kouki
21.11.11
✎
12:17
|
Сдрасте)) Вопрос Идиота. Не подскажете возможно ли каким-либо образом получить данные об имени полей dbf-файла????типо dbf-veawer. чтобы ручками не вводить кждый раз???
|
|||
1
Ёпрст
21.11.11
✎
12:17
|
ты не поверишь
|
|||
2
Wobland
21.11.11
✎
12:18
|
(0) да
|
|||
3
kouki
21.11.11
✎
12:26
|
Ну хоть на статью какую нить отправьте)))
|
|||
4
aka AMIGO
21.11.11
✎
12:32
|
примерно тут:
Книга знаний: Пример работы с файлами DBF по интерфейсу ADO а вообще-то в нижней строке окна браузера, Книга знаний |
|||
5
andrewks
21.11.11
✎
12:32
|
СП
|
|||
6
aka AMIGO
21.11.11
✎
12:33
|
и ЖКК :)
|
|||
7
kouki
21.11.11
✎
12:39
|
ну я так и понял, что через XBase не получится...
|
|||
8
aka AMIGO
21.11.11
✎
12:41
|
(7) может и получиться..
почитай про ОписаниеПоля(......) |
|||
9
Ёпрст
21.11.11
✎
12:41
|
(7) ПолучитьЗначениеПоля чем не устраивает ?!
|
|||
10
palpetrovich
21.11.11
✎
12:42
|
(7) смотри ОписаниеПоля
|
|||
11
Ёпрст
21.11.11
✎
12:43
|
имена знать вообще не обязательно, если что..
|
|||
12
Ёпрст
21.11.11
✎
12:44
|
(10) ты что?! Это же мужика в кепке в пофигураторе спрашивать надо, боязно автору СП открывать, вдруг чего прочитает лишнего, ненароком
|
|||
13
kouki
21.11.11
✎
12:54
|
(11) Я просто Унифицировать хотел.. А без имен нереально ж вроде доступ получить.. Ну по крайней мере так в ЖКК написано)))
|
|||
14
aka AMIGO
21.11.11
✎
12:59
|
извлеки все поля в ТЗ (или СЗ), и ей пользуйся
|
|||
15
andrewks
21.11.11
✎
13:01
|
(13)
ПолучитьЗначениеПоля(<?>) Синтаксис: ПолучитьЗначениеПоля(<НазваниеПоля>) Назначение: Возвращает значение поля. Параметры: <НазваниеПоля> - выражение с названием поля или с номером поля повторяю: или с номером поля, как слышно, приём |
|||
16
kouki
21.11.11
✎
13:03
|
(15). Слышно отлично, Спасибо я понял)))) разберусь хоть со всем этим))))
|
|||
17
aka AMIGO
21.11.11
✎
13:03
|
(15) ему надо вот позарез имена :)
|
|||
18
aka AMIGO
21.11.11
✎
13:05
|
а вообще-то интересно.. из ДД вытащить имена полей, и по ним читать дбф.. заодно - русские наименования вытаскивать..
логично :) |
|||
19
palpetrovich
21.11.11
✎
13:05
|
(11) эх
Функция ВыгрузитьДБФвТЗ(базаДБФ) Перем Тип, Название, Длина, Точность; ТЗ = СоздатьОбъект ("ТаблицаЗначений"); //заполняем структуру ТЗ Для инд = 1 По базаДБФ.КоличествоПолей() Цикл базаДБФ.ОписаниеПоля(инд, Название, Тип, Длина, Точность); Если (Число(Тип) = 1) или (Число(Тип) = 5) Тогда ТЗ.НоваяКолонка(СокрЛП(Название),"Число",Число(Длина),Число(Точность),,,,); ИначеЕсли Число(Тип) = 2 Тогда ТЗ.НоваяКолонка(СокрЛП(Название),"Строка",Число(Длина),,,,,); Иначе ТЗ.НоваяКолонка(СокрЛП(Название),,,,,,,); КонецЕсли; КонецЦикла; //заполняем данные в ТЗ Для индСтрока = 1 По базаДБФ.КоличествоЗаписей() Цикл ТЗ.НоваяСтрока(); базаДБФ.Перейти(индСтрока); Для индКолонка = 1 По базаДБФ.КоличествоПолей() Цикл ТЗ.УстановитьЗначение(индСтрока, индКолонка, базаДБФ.ПолучитьЗначениеПоля(индКолонка)); КонецЦикла; КонецЦикла; базаДБФ.ЗакрытьФайл(); Возврат ТЗ; КонецФункции |
|||
20
aka AMIGO
21.11.11
✎
13:06
|
(19) избалуешь ребенка :)
|
|||
21
palpetrovich
21.11.11
✎
13:11
|
(20) добрый я понедельник, расслабленный :)
|
|||
22
palpetrovich
21.11.11
✎
13:15
|
офф: Народ, а по ADO читать DBF быстрее? ...а 1sqlite умеет "левые" DBF читать?
|
|||
23
Mikeware
21.11.11
✎
13:32
|
И где ДенисЧ с предложением "купить СП"?
неужели я усмею предложить СП первым? |
|||
24
Ёпрст
21.11.11
✎
13:35
|
(22) гораздо быстрее, фоксовый провайдер умеет
|
|||
25
aka AMIGO
21.11.11
✎
13:37
|
(23) см. (5), тундра :)
|
|||
26
Mikeware
21.11.11
✎
13:39
|
(25) Судя по дальнейшему топику, СП у ТС украли..
ДенисаЧ нету, поэтому моя очередь предлагать купить СП... |
|||
27
palpetrovich
21.11.11
✎
13:39
|
(24) ну вот запутал ты меня запятой своей :)
|
|||
28
Mikeware
21.11.11
✎
13:41
|
(27) А представь, что вместо запятой была бы @ :-)))
|
|||
29
aka AMIGO
21.11.11
✎
13:45
|
(26) а потом, главное: "в 10 минут успеть добежать до канадской границы!" :)
|
|||
30
palpetrovich
21.11.11
✎
13:46
|
(28) ну, здесь как раз я-бы наверное интерпретировал ее как AND ...даже не знаю почему :)
зы сейчас попробовал через АДО - ну и тормоз, хБэйз однозначно пошустрее будет :) ...ну или я его готовить не умею |
|||
31
kouki
21.11.11
✎
13:55
|
(19),(20) Я уже написал что-то подобное)))))
Функция КакойТип(Тип) ВТип =""; Если Число(тип) = 1 Тогда ВТип ="Строка"; Возврат ВТип ; ИначеЕсли Число(тип) = 2 Тогда ВТип ="Число"; Возврат ВТип ; ИначеЕсли Число(тип) = 3 Тогда ВТип ="Дата"; Возврат ВТип ; ИначеЕсли Число(тип) = 4 Тогда ВТип ="Логическое"; Возврат ВТип ; ИначеЕсли Число(тип) = 5 Тогда ВТип ="Число"; Возврат ВТип ; КонецЕсли; КонецФункции Процедура ОткрытьДБФ () НазП =""; ТипП =""; ДлинаП = 0; ТочностьП = 0; файл = СоздатьОбъект("XBase"); файл.ОткрытьФайл("D:\TempResourses\FONDY\DRAG.dbf"); Для й = 1 по файл.КоличествоПолей() Цикл файл.ОписаниеПоля(й,НазП,ТипП,ДлинаП,ТочностьП); ТЗПоля.НоваяКолонка(НазП,КакойТип(ТипП), ДлинаП, ТочностьП); КонецЦикла; КонецПроцедуры |
|||
32
Ёпрст
21.11.11
✎
13:57
|
http://zalil.ru/32101681
на вот .. развлекайся |
|||
33
palpetrovich
21.11.11
✎
14:06
|
(32) вот спасибо, ща погляжу ;)
|
|||
34
palpetrovich
21.11.11
✎
14:10
|
+33 это-ж Microsoft OLE DB Provider ставить надо...
|
|||
35
Ёпрст
21.11.11
✎
15:52
|
(34) и ? Доступ к сайту мелкомягких закрыт шо ле ?
|
|||
36
kouki
22.11.11
✎
10:51
|
Не хочу создавать ради одного вопроса новую ветку. Подскажите такое дело.. Значит выбираю в реквизите диалога справочники.. Какая предопределенная процедура вызыввается когда выбираю определенный справочник????
|
|||
37
ЧеловекДуши
22.11.11
✎
10:58
|
(36)Не порти ветку :)
Создай новую, вопрос перефразируешь, а то нечегонепонятно :) |
|||
38
Ёпрст
22.11.11
✎
11:25
|
(36) перед - ПриНачалеВыбораЗначения, после - ОбработкаВыбораЗначения и формула в реквизите диалога
|
|||
39
palpetrovich
22.11.11
✎
11:47
|
(35) не в этом дело, себе-то я поставлю - не вопрос, а вот клиенту - вопрос ...короче, пусть ждут-мучаются ;)
|
|||
40
kouki
23.11.11
✎
09:59
|
Значит так вопрос по теме. Я как понимаю таблицы dbf из fox pro который дос только oledb можно перекинуть ибо там же индексные файлы...
|
|||
41
BlackSeaCat
23.11.11
✎
10:07
|
(40) Индексные файлы не при чем - ты их сам можешь создать.
|
|||
42
Ёпрст
23.11.11
✎
10:08
|
(40) не только
|
|||
43
Mikeware
23.11.11
✎
10:08
|
(38) Ёп, ты ПоставщикДанных (ну, или чистое ТП) - используешь?
Если да, то есть вопрос (лучше по аське) |
|||
44
Ёпрст
23.11.11
✎
10:15
|
(43) аськи нету ..а ТП использую без классов, если ты об этом.
|
|||
45
Mikeware
23.11.11
✎
10:18
|
(44) жаль, что аськи нет.
посоветуй, как при начале редактирования ячейки - отменить редактированеие ее, и перейти на редактирование другой (другого типа). (цель - типа принудительного заполнения обязательных полей) |
|||
46
Ёпрст
23.11.11
✎
10:23
|
(45) ПослеРедактированияЗначения
в этом событии надо рулить |
|||
47
Ёпрст
23.11.11
✎
10:24
|
||||
48
Mikeware
23.11.11
✎
10:28
|
(46) ПослеРедактирования - наверное уже поздно...
Надо ПриНачалеРедактирования ОтменитьРедактированиеЗначения - сейчас попробую, спасибо |
|||
49
Mikeware
23.11.11
✎
10:40
|
(48) ОтменитьРедактированиеЗначения - работает. спасибо. апдейт к доке я, естественно, не читал :-(
При назначении другой колонки - ТекущейКолонкой, редактированию предлагается значение старой колонки, но в новой (принадлежащей новой колонке) ячейке... :-( http://www.1cpp.ru/forum/YaBB.pl?num=1285520767/495#495 |
|||
50
kouki
23.11.11
✎
12:14
|
(42) т.е. xthtp XBase можно???? я просто обработку почти написал переделывать не очень хочется
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |