Вход | Регистрация

1С:Предприятие ::

Метки:

ADO проблемы с .Null. заначение...

Я
   Nikita
05.03.04 - 10:18
Подключаюсь к базе DBF и выполняю простые команды:
ADO = ÑîçäàòüÎáúåêò("ADODB.Recordset");

    ADO.Open("SELECT * FROM buffer.dbf","Driver={Microsoft Visual FoxPro Driver}; SourceType=DBF; SourceDB=D:\maykov",2,2,1);
ADO.AddNew();
ADO.Fields("NumDoc").Value = "154468";
ADO.Update();
После чего выскакивает ошибка!!!
Microsoft OLE DB Provider for ODBC Drivers: [Microsoft][ODBC Visual FoxPro Driver]Field DATEDOC does not accept null values.
Самое обидное, что запись в таблицу корректно добавляется, но программа остановлена.
Если в таблице разрешить .Null. значение для всех полей, все проходит ок, но менять базу не хочется!
Заполнять все поля... можно... но вдруг, кто добавт еще поле в базу!!!
 
  Рекламное место пустует
   Nikita
1 - 05.03.04 - 10:47
Решил проблему... но по циклу только... некрасиво :)
Процедура ЗаполнитьПустыми(Base)
     Для К=0 По (Base.Fields.Count()-1) Цикл
        Если (Base.Fields(К).Type = 133) Тогда
             Base.Fields(К).Value = '';
        ИначеЕсли (Base.Fields(К).Type = 129) Тогда
             Base.Fields(К).Value = "";  
        ИначеЕсли (Base.Fields(К).Type = 131) Тогда
             Base.Fields(К).Value = 0;   
        ИначеЕсли (Base.Fields(К).Type = 11) Тогда
             Base.Fields(К).Value = -1;
        КонецЕсли;
    КонецЦикла;
КонецПроцедуры// ЗаполнитьПустыми()


Список тем форума
Рекламное место пустует  
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует