Показать сообщение отдельно
Старый 06.02.2013, 08:57    | »»» |  #1
Леонид Борисович
Начинающий
 
Аватар для Леонид Борисович
 
Екатеринбург, ООО ЕСК
Регистрация: 18.09.2012
Сообщений: 38
Леонид Борисович is on a distinguished road
По умолчанию 1c (оле) <=> Автограф, запрос по заправкам топлива

Добрый день!

Задача такая... Необходимо получить данные запросом из 1с через оле в автограф по заправкам за период. Начало заправки, окончание, количество литров заправки.
Вроде все просто и понятно, но... Смотрим в описание полей dbf...
Для запроса через

AG.ExportDataToFile(ИмяФайлаБазыDBF,Р еквизитЗапроса,1);


Тип: 0 – координаты;
1 – аналоговые данные;
2 – счётчики 1-2;
3 – счётчики 3-4;
4 – характеристика движения;
5 – событие;
6 – 1-wire ID водителя;
7 – 1-wire температура 1-4;
8 – 1-wire температура 5-8;
9 – RS-485: датчики LLS 1-4;
10 – RS-485: датчики LLS 5-8;
11 – CAN1: скор., упр,. расход;
12 – CAN2: уровни топлива;
13 – CAN3: обороты, моточасы;
14 – CAN4: температура;
15 – CAN5: пробеги общ. и сут.;
16 – CAN6: нагрузка на колёса;
17 – CAN7: записи пользователя;
18 – счётчики 5-6;
19 – счётчики 7-8;
20 – RS-485: объём заправки;
21 – RS-485: расход топлива;
22 – RS-485: прод.-сть. заправки;
23 – RS-485: расширитель входов;
24 – RS-485: пассажиропоток;
25 – RS-485: вес (уровень);
26 – CAN: коды ошибок;
27 – CAN: калькулированный расход

Тут вроде ясно, строчка 22 – RS-485: прод.-сть. заправки, она нам и нужна.

т.е. в нашем случае AG.ExportDataToFile(ИмяФайлаБазыDBF,22 ,1); - это для продолжительности заправки,
для объема заправки ставим соответственно:
AG.ExportDataToFile(ИмяФайлаБазыDBF,20 ,1);

Далее делаем запрос в 1с ке

ДанныеОбработеКрановойУст ановки.Очистить();
AG=Новый COMОбъект("AutoGRAPH.AutoGRAPHAutomation"); // Создаем COM-объект
ddd=AG.WaitForInitializing(); // Ждем окончания инициализации объекта
НепройденныеКТ = 1; // Устанавливаем чекбокс "Показывать отчет с непройденными КТ" в положение "Да"
ТабГрупп.очистить();
ТабКТ.очистить();
ЗаполнитьТаблицуТС(Кран_);
Для каждого стр из ТабТС цикл
ТСПериодНач=НачалоДня(НачП ериода) ;
ТСПериодКон=КонецДня(КонПе риода) ;
AG.SetGroupIndexByFileName(стр.ГрФайл);
AG.SetCarIndexByDevice(стр.СерНом);
AG.WaitForComputing(стр.ГрФайл,стр.С рНом,ТСПериодНач,ТСПериод он,"GSM",1);
КолРейсов = AG.TripsNum;
ФайлКТ = AG.CarCheckPointsFile;
если КолРейсов > 0 тогда
AG.TripIndex = 1;
конецесли ;


СерийныйНомерКрана = стр.Серном ;

ИмяФайлаБазыDBF= строка("D:\kran.dbf");
Попытка
AG.ExportDataToFile(ИмяФайлаБазыDBF,22 ,1);
Исключение
AG.PropertyName = "Last_Error";
Сообщить(AG.PropertyValue);
Сообщить("Не удалось экспортировать данные: "+ОписаниеОшибки());
КонецПопытки;


Далее должен сформироваться файл dbf в него заходим и перебираем, берем что нам надо.
Но то что надо нам, нет.
Похоже что ExportDataToFile не воспринимает параметр 22.

Подскажите пожалуйста в чем засада?!
Может где то какой то параметр надо поставить?!

Добавлено через 51 минуту
система почему то обрезает сообщение. Чтобы посмотреть все, нажмите на расширенный режим...
Леонид Борисович вне форума   Ответить с цитированием