Имя: Пароль:
1C
 
Выгрузка в ДБФ - как передать переменные в команду
0 Skylark
 
30.01.07
12:08
В примере нашел как записать данные:

DBConn.Execute("Insert into Persons Values('Иванов И.И.', 'Москва','123-45-67','14589')");


А если у меня
Фамилия = Иванов;
как мне в эту строку передать переменную Фамилия?
1 Guk
 
30.01.07
12:08
афигеть...
2 Skylark
 
30.01.07
12:13
(1) ну и ладно, всё и без вас понял...
3 Skylark
 
30.01.07
12:15
а по типам полей не подскажете?
вот С - это Char?
а как полностью будет N и L?
4 kir-g
 
30.01.07
12:16
Number
5 Skylark
 
30.01.07
12:17
(4) а не Numeric?
6 kir-g
 
30.01.07
12:20
(5)очепятка
7 Skylark
 
30.01.07
12:26
L= Logical
8 Skylark
 
30.01.07
12:31
а как ее объявить здесь:

DBConn.Execute("Create Table Persons (REALFIL char(9), NOMLS char(24), SUMMA numeric(19,2), MATCH char(5), MADE logical)");

?
Microsoft JET Database Engine: Ошибка синтаксиса при определении поля.
9 Defender aka LINN
 
30.01.07
12:36
(8) Boolean попробуй. Хотя есть у меня подозрение, что ДБФ этот тип не поддерживает.
10 FreeFin
 
30.01.07
12:42
(9) Boolean нету Logical есть Длина: (1) всегда.
11 Skylark
 
30.01.07
12:45
DBConn.Execute("Create Table Persons (REALFIL char(9), NOMLS char(24), FAMILY char(20),    NAME char(20), SECNAME char(20), SUMMA numeric(19,2), MATCH char(5), MADE Logical(1))");
{Обработка.ВыгрузкаВДБФ.Форма.Модуль(108)}: Microsoft JET Database Engine: Ошибка синтаксиса при определении поля.
12 FreeFin
 
30.01.07
13:13
(11)
DBConn.Execute("Create Table Gups (REALFIL char(9), NOMLS char(24), SUMMA numeric(19,2), MATCk char(5), MADi logical)");
Зарезервированные имена в наименовании полей.=нинуна
13 Skylark
 
30.01.07
17:28
А через XBase прекрасно работает
   
       ДБФ = СоздатьОбъект("XBase");
   
   ДБФ.ДобавитьПоле("REALFIL", "S", 9    , 0);
   ДБФ.ДобавитьПоле("NOMLS",   "S", 24    , 0);
   ДБФ.ДобавитьПоле("FAMILY",  "S", 20    , 0);
   ДБФ.ДобавитьПоле("NAME",    "S", 20    , 0);
   ДБФ.ДобавитьПоле("SECNAME", "S", 20    , 0);
   ДБФ.ДобавитьПоле("SUMMA",   "N", 19    , 2);
   ДБФ.ДобавитьПоле("MATCH",   "S", 5    , 0);
   ДБФ.ДобавитьПоле("MADE",    "L", 1    , 0);
   ДБФ.ДобавитьПоле("FORWARD", "L", 1    , 0);
                         
   ДБФ.КодоваяСтраница(1);
   
   ДБФ.СоздатьФайл(ВыбФайл);
   
   ТаблЗнач.ВыбратьСтроки();
   Пока ТаблЗнач.ПолучитьСтроку() = 1 Цикл
       ДБФ.Добавить();

       ДБФ.REALFIL =    Строка(ВыбБанк.НомерОтделения) + "/00" + Строка(ТаблЗнач.Филиал);
       ДБФ.FAMILY =    СокрЛП(Лев(ВРег(ТаблЗнач.Фамилия), 20));
       ДБФ.NAME =        СокрЛП(Лев(ВРег(ТаблЗнач.Имя), 20));
       ДБФ.SECNAME =   СокрЛП(Лев(ВРег(ТаблЗнач.Отчество), 20));
       ДБФ.NOMLS =    СокрЛП(Лев(ВРег(ТаблЗнач.ЛицСч), 24));
       ДБФ.SUMMA =    Число(ТаблЗнач.Сумма);
       ДБФ.MATCH =    "FULL";
       ДБФ.MADE =        "F";
       ДБФ.FORWARD =    "F";
       
       ДБФ.Записать();
   КонецЦикла;
   
   ДБФ.ЗакрытьФайл();
14 Эльниньо
 
30.01.07
17:51
(13) А ДБФ.FORWARD = 1 прокатит?
16 listik
 
08.05.07
13:44
(13) А на соседню колонку переходить можно??