Показать сообщение отдельно
Старый 05.10.2006, 11:54   #1  
demon46 is offline
demon46
Участник
 
78 / 12 (1) ++
Регистрация: 26.06.2006
Импорт справочника поставщиков в AX
Доброго времени суток коллеги!
У меня есть вопрос и ответ на него, но не уверен правильный ли мой ответ.
Задача такова. В ЕХСЕль есть список поставщиков. Мне необходимо импортировать из этого файла поставщиков. Условия таковы. Всех поставщиков нужно заводить заново, обновление записей не нужно.
Код:
 
void PutVend(str FileName)
{
  VendTable vend;
  NumberSeq numberSeq;
  Num       number;
  Uni_ExcelImportADO  excelImp;
  ;
  excelImp = new Uni_ExcelImportADO(FileName);
  if(!excelImp.openFile())
            throw error(strfmt(@"Ioeaea i?e ioe?uoee oaeea Excel «%1»", Filename));
  while(!excelImp.eof())
    {
      vend.initValue();
      number = numberSeq::newGetNum(NumberSequenceReference::Find(602)).num();
      vend.AccountNum = number;
      vend.InvoiceAccount = number;
      vend.NameAlias = excelImp.getFieldValue(1);
      vend.Name = excelImp.getFieldValue(2);
      vend.INN_RU = excelImp.getFieldValue(3);
      vend.Address = excelImp.getFieldValue(4);
      vend.Phone = excelImp.getFieldValue(5);
      vend.YourAccountNum = excelImp.getFieldValue(6);
      vend.VendGroup = "INI";
      vend.PostingProfile = "INI";
      vend.AFPLeadTime = 1;
      vend.LanguageId = "ru";
      vend.PriceCurrency = "RUR";
      vend.Country = "RUS";
      vend.insert();
      excelImp.moveNext();
    }
  excelImp.finalize();
}
По чтению из ЕХСЕль вопросов не возникает. Все работает хорошо. еще раз спасибо gl00mie за предоставленный класс Uni_ExcelImportADO.
Но вот сегодня консультант сказал, что возможна ситуация неверного заполнения, так как я заполняю только поля таблицы. В фортме VendTable я протестировал ввод новой записи вручную, и ничего лишнего(какие-то действия, кроме заполнения таблицы) я не нашел. Может я ошибаюсь? Пожалуйста помогите мне с этим.