Автор Тема: Automation Server  (Прочитано 2703 раз)

0 Пользователей и 1 Гость просматривают эту тему.

bossiii333

  • Новичок
  • *
  • Сообщений: 7
  • ФИО: Ильясов Ильдар Ильясович
Automation Server
« : Февраль 06, 2023, 11:17:28 am »
День добрый, небольшая проблема:
Не могу понять как правильно прописать путь к базе. Т.е. ссылка должна быть только на папку в которой база с расширением 1CD, или нужно явно указать название базы, хотя делал и так и так, все равно уходил в Исключение
      Предупреждение("База данных не открыта!!!")

Данная процедура на форме обработки:

&НаКлиенте
Процедура AutomationТолстыйКлиент(Команда)
   
   Путь = "c:\InfoBases";
   Пароль = "";
   Пользователь = "";
   
   V83 = Новый COMОбъект("V83.Application");
      
   Попытка
      Открытие = V83.Connect("File=" + Путь + ";Usr=" + Пользователь + ";Pwd=" + Пароль + ";");
   Исключение
      Предупреждение("База данных не открыта!!!");
      Возврат;
   КонецПопытки;   
   
   МенеджерНоменклатуры = V83.Справочники.Номенклатура;
   НовыйЭлемент = МенеджерНоменклатуры.СоздатьЭлемент();       
   НовыйЭлемент.Наименование = "Созданный";
   НовыйЭлемент.Записать();
   Фрм = НовыйЭлемент.ПолучитьФорму();
   Фрм.ОткрытьМодально();

КонецПроцедуры


Код в модуле листа эксель:

Sub OLE()
    Dim trade As Object
    Dim Элемент As Object

    Set trade = CreateObject("V83.Application")
    trade.Connect ("File=""C:InfoBases"";Usr="""";")
   
    Rem создаем документ
    Set Документ = trade.Документы.РасходнаяНакладная.СоздатьДокумент()
       
    Rem получаем данные из листа
    Set Контрагент = trade.Справочники.Контрагенты.НайтиПоНаименованию(Application.Cells(1, 2).Value)
    НомерДокумента = Application.Cells(2, 2).Value
    Дата = Application.Cells(3, 2).Value
   
    Rem записываем полученные данные в документ
    Документ.Контрагент = Контрагент
    Документ.Дата = Дата
    Документ.Номер = НомерДокумента

    Номер = 6   'Первая строка табличной части
    НомерСтроки = Application.Cells(Номер, 1).Value
   
    Rem в последней строке табличной части будет символ #
    While НомерСтроки <> "#"
   
        Rem получаем данные из листа
        Set Номенклатура = trade.Справочники.Номенклатура.НайтиПоНаименованию(Application.Cells(Номер, 2).Value)
        Количество = Application.Cells(Номер, 5).Value
        Цена = Application.Cells(Номер, 6).Value
        Сумма = Application.Cells(Номер, 7).Value
       
        Rem записываем полученные данные в строку табличной части
        Set Строка = Документ.Товары.Добавить()
        Строка.Номенклатура = Номенклатура
        Строка.Количество = Количество
        Строка.Цена = Цена
        Строка.Сумма = Сумма
        Номер = Номер + 1
        НомерСтроки = Application.Cells(Номер, 1).Value
    Wend
    Документ.Записать
   
    Документ.ПолучитьФорму.ОткрытьМодально

End Sub

nonameforme

  • Пользователь
  • **
  • Сообщений: 14
  • ФИО: Дмитрий
Re: Automation Server
« Ответ #1 : Февраль 19, 2023, 12:23:46 pm »
А если Исключение убрать, на что будет ругаться?