Подключение к DBF

4 Добавил: Артур

Подключение к DBF с параметрами

DBF
Функция НовоеПодключение2()  //Подключение к DBF
	Таблица = Новый ТаблицаЗначений();

Connection = Новый COMОбъект("ADODB.Connection"); // Создание COM-объекта
	Connection.Open("Provider=Microsoft.Jet.OLEDB.4.0;
	         |Data Source=" +КаталогФайла +";
	         |Extended Properties=DBASE III");    
    Connection.BeginTrans();    
   // Создание объекта выполнения команды
    Command = Новый COMОбъект("ADODB.Command");
   // Указание активного соединения 
    Command.ActiveConnection = Connection;    
   // Определение текста команды

	Command.CommandText = "SELECT * FROM Calls WHERE DATE between  @DataN AND @DataK";  //Calls  -название файла DBF
	Дата1 = Формат(НачПериода, "ДФ=MM.dd.yyyy");
	Дата2 = Формат(КонПериода, "ДФ=MM.dd.yyyy");
	
    Param1 = Command.CreateParameter("@DataN", 133, 1);
    Command.Parameters.Append(Param1);
    Param1.Value = Дата1;
	
	Param2 = Command.CreateParameter("@DataK", 133, 1);
    Command.Parameters.Append(Param2);
    Param2.Value = Дата2;

   // Определение типа команды
   //Command.CommandType = 4;
   // Создание объекта набора записей
    RecordSet = Новый COMОбъект("ADODB.RecordSet");
    RecordSet = Command.Execute();
	
	Пока RecordSet.EOF=0 Цикл //Цикл по записям файла DBF
	        м= Таблица.Добавить();
		м.Дата 			   	=  RecordSet.Fields("DATE").Value;
		м.Длительность		=  RecordSet.Fields("IDURATION").Value ;
		м.Время	           	=  RecordSet.Fields("ITIME").Value;
		м.СО              	=  RecordSet.Fields("CO").Value   ;
		м.ВнутрНомер        =  RecordSet.Fields("EXTENSION").Value ;
		м.TrunkГруппа       =  RecordSet.Fields("TRUNKGROUP").Value ;
		м.Transfer         	=  RecordSet.Fields("TRANSFER").Value   ;
		м.Цена            	=  RecordSet.Fields("PRICE").Value     ;
		м.Номер           	=  RecordSet.Fields("NUMBER").Value   ;
		м.Статус           	=  RecordSet.Fields("STATUS").Value   ;
		м.ВремяДоОтвета     =  RecordSet.Fields("RINGBEFORE").Value ;
		м.CallerID         	=  RecordSet.Fields("CALLERID").Value  ;
	    RecordSet.MoveNext(); //Переходим к следующей записи
	КонецЦикла;
	RecordSet.Close();

Возврат Таблица;	
КонецФункции
Назад к списку

Комментарии

FastCode - сервис поиска кода 1С

Уже более 1000 разработчиков используют FastCode в работе!