Вход | Регистрация


1С:Предприятие ::

Метки: 

Не находится по наименованию элемент справочника в управляемых формах

Я
   sidalexsandr
 
16.02.18 - 13:50
Пишу
&НаСервере
Функция СоздатьНовыйДокумент(ДокументРеал)
   К = Справочники.Контрагенты.НайтиПоНаименованию("ИВАН ФЕДОРОВ",,,);
КонецФункции


Выдает ошибку:отсутствует отображение для типа ComОбъект
 
 
   Darych
 
1 - 16.02.18 - 14:08
ты что-то недоговариваешь.. и вообще темы одна за одной. а инфу из тебя клещами нужно тащить... короче иди кури
   Рэйв
 
2 - 16.02.18 - 14:13
(0)А что там с COM соединением связано ты конечно, как настоящий партизан, решил утаить?
   Lexey_
 
3 - 16.02.18 - 14:19
(0) "ИВАН ФЕДОРОВ",,,
а зачем 3 запятых поставил?
   Defender aka LINN
 
4 - 16.02.18 - 14:30
(0) Тут нужен для начала учебник русского языка.
Ну или внимательность, чтобы заметить, что ошибка с поиском по наименованию никак не связана.
   sidalexsandr
 
5 - 16.02.18 - 14:49
(1) Вот полный тескт
&НаСервере 
Функция СоздатьНовыйДокумент(ДокументРеал)
    НовРеал = Документы.РеализацияТоваровУслуг.СоздатьДокумент();
    //НовРеал.Номер = "М0000000159";



    НовРеал.Дата = ТекущаяДата();
    //НовРеал.СписокВидовОперацийЗначение = 

    К = Справочники.Контрагенты.НайтиПоНаименованию("ИВАН ФЕДОРОВ",,,);
       
    //НовРеал.Контрагент = К; 

    
    НовРеал.Записать();

    Возврат НовРеал.ссылка;
    
КонецФункции
   sidalexsandr
 
6 - 16.02.18 - 14:53
Исходная процедура
&НаКлиенте
Процедура Запустить(Команда)
    
        
    Соединение = Новый COMОбъект("V83.Application");
    //База = Новый COMObject("V82.Application"); 

    //connection = Соединение.Connect("File=""C:\1c-star-baza"""+СокрЛП("Старая")+""";Usr="""+СокрЛП("Репнин Александр")+""";Pwd = """ + СокрЛП("9985") + """;");


    //Для варианта клиент - сервер

    //СтрокаСоединения = "Srvr = ""192.168.90.113"";Ref = ""Старая""; Usr = Репнин Александр; Pwd = 9985";

 
    //Для варианта файлового режима:

    СтрокаСоединения = "File = C:\1c-star-baza; Usr = РепнинАлександр; Pwd = 9985";
    //СтрокаСоединения = "192.168.90.113;Ref=~SQL Сервис-Центр~;usr=Репнин Александр;pwd=9985";

    Попытка
        Соединение.Connect(СтрокаСоединения);
        Сообщить("Подключился к базе");
    Исключение
        Сообщение = Новый СообщениеПользователю;
        Сообщение.Текст = "Не удалось подключиться к базе" + ОписаниеОшибки(); Сообщение.Сообщить();
    КонецПопытки;

    //ДокументРеал = Подключение.Документы.РеализацияТоваровУслуг.Выбрать('20130101', '20140110' );

    //Подключение.Документы.РеализацияТоваровУслуг.СоздатьДокумент();

     Реал = Соединение.Документы.РеализацияТоваровУслуг;
    //Реал  = Подключение.Документы.РеализацияТоваровУслуг;

     ДокументРеал = Реал.Выбрать('20130101', '20140110' );
    ////ВыборкаДокументов = Документы.РеализацияТоваровУслуг.Выбрать('20130101', КонецДня(ТекущаяДата()) );  09.01.2014

    //ВыборкаДокументов = Документы.РеализацияТоваровУслуг.Выбрать('20130101', '20140110' ); 

    Сообщить("ТекДата = "+ТекущаяДата());
    Пока ДокументРеал.Следующий()=1 Цикл 
         Сообщить("Документ = "+ДокументРеал.Дата);
         МойНовыйДок = СоздатьНовыйДокумент(ДокументРеал);
    КонецЦикла;

    
КонецПроцедуры
   Defender aka LINN
 
7 - 16.02.18 - 14:54
(6) А для за каким органом ты передаешь COM-объект на сервер?
   sidalexsandr
 
8 - 16.02.18 - 14:59
(7) У меня управляемые формы. И я так понимаю создавать документы я могу только НаСервере. Вообще стоит задача перенисти документы РеализацияТоваровУслуг из УТ в БУХ.
   Defender aka LINN
 
9 - 16.02.18 - 15:01
(8) Я не спрашивал у тебя, что ты и где создаешь. Я спросил, зачем ты передаешь на сервер объект, которым даже не пользуешься?
Ну и если стоит задача перенести данные - КД в зубы и вперед.
   silent person
 
10 - 16.02.18 - 15:07
(9) он видимо выучил что с объектами БД работают только на сервере, вот и передает СОМ объект на сервер.

вот еще один такой же был http://devtrainingforum.v8.1c.ru/forum/thread.jsp?id=572492&print=1

(8) не надо ничего не куда передавать. работай с СОМ объектами на клиенте.
 
  Рекламное место пустует
   Darych
 
11 - 16.02.18 - 15:09
"смешались в кучу кони, люди.."
   drcrasher
 
12 - 16.02.18 - 15:12
(9) дык уже лет пицот из ут в бп данные передаются "из коробки". даже кд в зубы не нужна
   sidalexsandr
 
13 - 16.02.18 - 15:46
(12) У меня Ут 10 и БП 3. В стандартных обработках Ут нет Бух 3
   drcrasher
 
14 - 16.02.18 - 15:51
(13) значит нужно обновиться до последней версии
   sidalexsandr
 
15 - 16.02.18 - 15:52
Как НаСервере получить доступ к документам которые были выбранны НаКлиенте через Оле?
   sidalexsandr
 
16 - 16.02.18 - 15:55
(14) Предыдущий программист 1с сказал, что конфигурация сильно измененная и поэтому типовыми средствами не перенести.
   Darych
 
17 - 16.02.18 - 15:58
(15) выбирай на сервере или передавай на сервер с клиента нужную инфу, а не выбранные по оле объекты
   sidalexsandr
 
18 - 16.02.18 - 16:11
Попробовал всю большую процедуру выполнять на сервере и убрал вызов из клиентской процедуры процедуры серверной.
В результате получилась одна большая серверная процедура, вот:
&НаСервере
Процедура Запустить(Команда)
    
        
    Соединение = Новый COMОбъект("V83.Application");
    //База = Новый COMObject("V82.Application"); 

    //connection = Соединение.Connect("File=""C:\1c-star-baza"""+СокрЛП("Старая")+""";Usr="""+СокрЛП("Репнин Александр")+""";Pwd = """ + СокрЛП("9985") + """;");


    //Для варианта клиент - сервер

    //СтрокаСоединения = "Srvr = ""192.168.90.113"";Ref = ""Старая""; Usr = Репнин Александр; Pwd = 9985";

 
    //Для варианта файлового режима:

    СтрокаСоединения = "File = C:\1c-star-baza; Usr = РепнинАлександр; Pwd = 9985";
    //СтрокаСоединения = "192.168.90.113;Ref=~SQL Сервис-Центр~;usr=Репнин Александр;pwd=9985";

    Попытка
        Соединение.Connect(СтрокаСоединения);
        Сообщить("Подключился к базе");
    Исключение
        Сообщение = Новый СообщениеПользователю;
        Сообщение.Текст = "Не удалось подключиться к базе" + ОписаниеОшибки(); Сообщение.Сообщить();
    КонецПопытки;

    //ДокументРеал = Подключение.Документы.РеализацияТоваровУслуг.Выбрать('20130101', '20140110' );

    //Подключение.Документы.РеализацияТоваровУслуг.СоздатьДокумент();

     Реал = Соединение.Документы.РеализацияТоваровУслуг;
    //Реал  = Подключение.Документы.РеализацияТоваровУслуг;

     ДокументРеал = Реал.Выбрать('20130101', '20140110' );
    ////ВыборкаДокументов = Документы.РеализацияТоваровУслуг.Выбрать('20130101', КонецДня(ТекущаяДата()) );  09.01.2014

    //ВыборкаДокументов = Документы.РеализацияТоваровУслуг.Выбрать('20130101', '20140110' ); 

    Сообщить("ТекДата = "+ТекущаяДата());
    Пока ДокументРеал.Следующий()=1 Цикл 
         Сообщить("Документ = "+ДокументРеал.Дата);
        // МойНовыйДок = СоздатьНовыйДокумент(ДокументРеал.Ссылка);

        // МойНовыйДок = СоздатьНовыйДокумент();

        //*********************************************************************************

        НовРеал = Документы.РеализацияТоваровУслуг.СоздатьДокумент();
    НовРеал.Дата = ТекущаяДата();
    Контр = ДокументРеал.Контрагент.Наименование;
    К = Справочники.Контрагенты.НайтиПоНаименованию(Контр);    
    
    НовРеал.Контрагент = К; 
    Ф = Справочники.Организации.НайтиПоНаименованию("Медресурс");        
    НовРеал.Организация = Ф; 
    НовРеал.Записать();

    КонецЦикла;

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


Вопросы:
1)почему на сервере не создается документ
2) какой функкцией пользоваться НаСерввере для отладки вместо функции Сообщить()?
   Darych
 
19 - 16.02.18 - 16:15
1) откуда знаешь, что не создается?
2) отладчиком
   Cyberhawk
 
20 - 16.02.18 - 16:16
(16) Что за предыдущий? Ты там в штате что ли?
   sidalexsandr
 
21 - 16.02.18 - 16:16
(20) Да в штате.
   sidalexsandr
 
22 - 16.02.18 - 16:18
Сделал
&НаСервере
Процедура ЗапуститьРаб()
    // Тест программы с Оле

КонецПроцедуры
&НаКлиенте
Процедура Запустить(Команда)
    ЗапуститьРаб();    
КонецПроцедуры    

Теперь работает
   Вафель
 
23 - 16.02.18 - 16:20
Типовые средстваа можно и доработать, что гораздо легче чем свой обмен писать
   sidalexsandr
 
24 - 16.02.18 - 16:39
(23) А что сложного написать. Подключился по Оле и цикл по документам и создание новых документов, а дальше в цикле заполнение у созданного документа табличной части
   hhhh
 
25 - 16.02.18 - 16:51
(24) ну там у документа 50 реквизитов. И 30 в табличной части, и какждый реквизит вы должны разобрать, как его присваивать, что туда писать. Представьте каког нереального объема заполнение вы должны замутить. А типовой он уже есть, можно его использовать.
   Cyberhawk
 
26 - 16.02.18 - 16:52
(24) Это когда один вид документа и правила обмена просты. А когда 500 видов справочников и 200 видов документов - зае*ешься по Оле писать ))
   sidalexsandr
 
27 - 16.02.18 - 17:01
(26) Согласен. У меня ограниченное число видов документов.
   hhhh
 
28 - 16.02.18 - 17:34
(27) ну даже если 10 видов документов, умножим на 80 реквизитов, получается 800 процедур вам надо написать минимум. Это если у вас на всё про всё меньше 2х месяцев, то вы подумайте.
   Джинн
 
29 - 16.02.18 - 17:41
Дайте ТС яду. Пусть не мучается человек.



Список тем форума
Рекламное место пустует  
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует