Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Вызов процедуры/функции объекта с проверкой? (число прочтений - 1550 )
pvase
God Member
*****
Отсутствует



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Вызов процедуры/функции объекта с проверкой?
26. Августа 2008 :: 09:37
Печать  
Например надо для документа "Расходная" вызвать процедуру "Печать" из формы документа с проверкой на сущестование такой процедуры.

Читал что есть такая возможность вызывать функции модулей как методы, как можно это сделать для объекта полученного через СоздатьОбъект?
Например вот такое:
Код
Выбрать все
Об = СоздатьОбъект("Документ.Расходная");
Об.НайтиПоНомеру("РН-0000012",РабочаяДата());
Об.Печать(); 


где "Печать()" - функция формы, описанная в модуле формы документа.
  
Наверх
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вызов процедуры/функции объекта с проверкой?
Ответ #1 - 26. Августа 2008 :: 09:50
Печать  
Создавай наследника.
  
Наверх
 
IP записан
 
pvase
God Member
*****
Отсутствует



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вызов процедуры/функции объекта с проверкой?
Ответ #2 - 26. Августа 2008 :: 11:30
Печать  
Arta писал(а) 26. Августа 2008 :: 09:50:
Создавай наследника.


Спасибо, если Вас не затруднит и это не сильно сложно - покажите плиз примерчик. Спасибо.
  
Наверх
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вызов процедуры/функции объекта с проверкой?
Ответ #3 - 26. Августа 2008 :: 11:44
Печать  
1. Простой вариант -
при загруженной 1С++ пишешь
ОткрытьФорму(НужныйДок, КонтФормы);
КонтФормы.Печать()

2. если тебе нужно без открытия формы, тогда более сложный, но и более масштабируемый вариант.
Создаешь новый класс (КОП) 1С++ типа Документ_Наследник с методом Печать(), в этот метод переносишь функционал метода Печать из модуля формы и далее пишешь.
Код
Выбрать все
Об = СоздатьОбъект("Документ_Наследник "); //Документ.Расходная");
Об.НайтиПоНомеру("РН-0000012",РабочаяДата());
Об.Печать();  

  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вызов процедуры/функции объекта с проверкой?
Ответ #4 - 26. Августа 2008 :: 11:47
Печать  
Пример подобных наследников можешь посмотреть в репозитарии в моей конфе классов 1С++ - самая верхняя прикрепленная ветка.

Например, для справочника посмотри классы
Общие.Справочник.ДополнительныеРеквизиты
Общие.Справочник.ПолучитьИзменение
Общие.Справочник.СоздатьКопиюЭлемента

Также, думаю, тебе будет интересно, как я решил проблему с различными видами справочников.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать