Имя: Пароль:
1C
1С v8
ADODB.Connection: Проблема с чтением DBF : Имя поля "STAGETOTAL"
0 kubik_live
 
05.11.18
01:48
Проблема:

Читаю DBF из Бухсофта:     

PathFile=Набор.PathFileФизическиеЛица;
    NameFile=Набор.NameFileФизическиеЛица;
    
    DBConn = Новый COMОбъект("ADODB.Connection");
    DBConn.Open("Provider=vfpoledb.1;Data Source="+PathFile+";Collating Sequence=Russian;");
    //Делаем выборку
    DataSize = DBConn.Execute("Select Count(*) As NRec from ["+NameFile+"]");
    КолвоЗаписей=Число(DataSize.Fields("NRec").value);
    
    Data = DBConn.Execute("Select * from ["+NameFile+"]");


.........

            СтажОбщийНачалоDBF  = Data.Fields("STAGETOTAL").value;  // вот здесь беда:

{ВнешняяОбработка.Бухсофт_ПереносДанных.Форма.Форма.Форма(1205)}: Ошибка при получении значения атрибута контекста (Value)
            СтажОбщийНачалоDBF  = Data.Fields("STAGETOTAL").value;
по причине:
Произошла исключительная ситуация (Microsoft OLE DB Provider for Visual FoxPro): Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности, проверьте значения всех состояний OLE DB. Работа не выполнена.

Если закомментить СтажОбщийНачалоDBF  = Data.Fields("STAGETOTAL").value;

то все ОК.

Поле STAGETOTAL - тип Дата, остальные поля с типом Дата нормально читаются.

Что делать, кто подскажет?
1 kubik_live
 
05.11.18
02:16
Нашел источник проблемы: почему-то в цикле при чтении спотыкается на одной из строк DBF в этом поле. Предыдущие обработались нормально.
Открываю таблицу DBFNavigator'ом: там пустое значение типа "DATE" как и некоторых предыдущих, которые прочитались без проблем.

Как решить проблему?
2 kubik_live
 
05.11.18
02:29
Решил через Попытка - Исключение ...

Чем посмотреть, что в этом поле на самом деле?
3 kubik_live
 
05.11.18
02:39
Проблема решена: в поле оказалась запись: 21.12.0011 - почему-то не видится просмотрщиком DBF