// скрипт для импорта прайс-листа от Регион. используется процедурой Loader.LoadFromFileWithScript
// нужно заполнить ImportDataset в соответствии с полями:


var
    Filename :string; // Файл импорта
    SelfLoader :TPriceLoader; // вызывающий скрипт лодер

var
    MissStrings :integer = 12;

var Table :Tclientdataset;
    tmpDir :string;
    tmpfile :string;
    Mappings :string;
    strval :string;
begin
  table := tclientdataset.create(selfscript);
  //mappings := tstringlist.create;
  try
    tmpdir := includetrailingpathdelimiter(gettempdir+'tmpscriptimport-'+formatdatetime('dd-mm-yyyy-hh-nn-ss',now));
    forcedirectories(tmpdir);

    tmpfile := tmpdir+extractfilename(filename);

    copyfile(filename,tmpfile);
    try


      selfloader.Field_Name_Goods := 'Наименование';
      SelfLoader.Field_Code_Goods := 'Артикул';
      SelfLoader.Field_Name_Producer := 'Производитель';
      selfloader.field_price := 'Цена__с НДС___руб_';
      selfloader.field_shelf_life := 'Срок годности';
      selfloader.field_place_cap := 'Количество в заводской упаковке';



      // считаем, сколько строк пропустить

      missstrings := 0;
      readxls(selfloader.importcds, tmpfile,false,false,-1); // если сделать 0, то автопропуск пустых сработает

      selfloader.importcds.first;
      while not selfloader.importcds.eof
           and (selfloader.importcds.fields[2].asstring<>selfloader.field_name_goods)
      do begin
        inc(MissStrings);
        selfloader.importcds.next;
      end;

      // принимаем файл

      readxls(selfloader.importcds,tmpfile,false,true,missstrings);
      //selfloader.importcds.savetofile('c:\temp\1.cds');
      //selfloader.LoadFromXLS(tmpfile,false,true,MissStrings);



    finally
      cleardir(tmpdir);
      deletedir(tmpdir);
    end;

  finally
    //mappings.free;
    table.free
  end;


end.
