// передача дефектуры по скрипту

const ExportPath = 'c:\export\preqs\'; // Каталог, куда будут выбрасываться файлы
const BULKFILENAME = ''; // имя файла-заготовки, с полным путем, если не хотим, чтобы программа генерировала этот файл сама
//const EXPORTFILENAME = 'preq.dbf'; // имя файла экспорта

var DATASET :TClientDataset; // датасет, передающий данные

var
  Table :TTable;
begin

  with tMyWait.create('Идет экспорт заявки') do
  try
    ForceDirectories(ExportPath);

    TAble := TTable.create(nil);
    try
      Table.tablename := ExportPath+'preq'+formatdatetime('dd.mm.yy.hh',now)+'.dbf';
      table.exclusive := true;

      if fileexists(BulkFILEName)
      then begin
        CopyFile(BulkFileName,Table.tablename);
        table.emptyTable;
      end
      else begin
        table.fielddefs.clear;
        Table.fielddefs.add('CODE',ftString,20,false);
        table.fielddefs.add('NAME',ftSTring,200,false);
        Table.fielddefs.add('PRICE',ftFloat,0,false);
        Table.FieldDefs.add('QUANTITY',ftFLoat,0,false);
        Table.CreateTable;
      end;

      Table.open;

      Dataset.filter := '[KOL] > 0';
      Dataset.filtered := true;

      progressbarmax := dataset.recordcount;
      progressbarpos := 0;

      dataset.first;
      while not dataset.eof do
      begin
        table.append;
        table.fieldbyname('CODE').asString := dataset.fieldbyname('NN').asString;
        table.fieldbyname('NAME').asstring := dataset.fieldbyname('name').asstring;
        table.fieldbyname('price').asfloat := dataset.fieldbyname('cena').asfloat;
        table.fieldbyname('Quantity').asfloat := dataset.fieldbyname('kol').asfloat;
        table.post;
        dataset.next;
        IncProgress;
      end;



    finally
      Table.free
    end;

    hide; // waitform
    CreateHintI('Операция завершена','Передача дефектуры',20);
  finally
    free
  end;


end.
