А мне нужно просто при открытии объекта перехватить адрес файла обработки... Вывел кнопку "Ок" из стандартных команд ... и при открытии нажал.
Может я чего-то не понимаю ... Простите, а что мешает использовать событие в модуле формы "ПриОткрытии" Вашей обработки ? Вам же привели пример выше (Bernet)
Цитата(Gigi @ 17.04.19, 12:38)
А если это свойство применимо только в модуле объекта то там у В.О. только одно событие.. "ОбработкаПроверкиЗаполнения"
Так добавьте свою функцию туда... Модуль объекта Вашей внешней обработки:
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Тогда
Функция ПолучитьИмяФайлаВнешнейОбработки() Экспорт Попытка Возврат ЭтотОбъект.ИспользуемоеИмяФайла; Исключение Возврат ""; КонецПопытки; КонецФункции #КонецЕсли
Модуль формы Вашей внешней обработки:
&НаСервере Функция (ПолучитьНаСервере() Возврат РеквизитФормыВЗначение("Объект").ПолучитьИмяФайлаВнешнейОбработки(); КонецФункции
leonid_gun @ Сегодня, 23:42
, Просто в меню высвечивается текстовое представление (2 параметр, а если он не указан, то равен значению (1 параметр)) У Вас в представлении запятые, а в значении точки. поэтому на картинке запятая в списке, а в поле точка Удачи.
leonid_gun, Вы "от руки" вводите или выбираете из списка? На скорую руку, извините, если что:
// (с) awp :) Функция ТипДокИзм() Перем Зн; СпЗн = СоздатьОбъект("СписокЗначений"); СпЗн.ДобавитьЗначение("прозора"); СпЗн.ДобавитьЗначение("непрозора"); СпЗн.ДобавитьЗначение(0); СпЗн.ДобавитьЗначение(2); СпЗн.ДобавитьЗначение(1.1); СпЗн.ДобавитьЗначение(2.5); Рез = СпЗн.ВыбратьЗначение(Зн,,,,1); Если Рез = 1 Тогда Возврат Зн; КонецЕсли; КонецФункции
Процедура ПриНачалеВыбораЗначения() Сообщить("Перед появлением меню"); Зн = ТипДокИзм(); Сообщить("Зн="+Зн); Сообщить("Меняем Зн на Зн+Зн"); Если ТипЗначенияСтр(Зн)="Число" Тогда Зн = Число(Зн); КонецЕсли; Зн = Зн+Зн; Сообщить("А теперь Зн="+Зн); ТипДок = Зн; КонецПроцедуры
2 параметр убрал, лень выписывать его )) Получайте значение и делайте с ним что хотите...
Извиняюсь,вот чуть подправленный... Изменения:
Процедура ПриНачалеВыбораЗначения()
на
Процедура ПриНачалеВыбораЗначения(Рекв)
ТипДок = Зн;
на
УстановитьАтрибут(Рекв,Зн)
Должно для каждого реквизита выбирать свое значение. Рекв - Идентификатор Вашего реквизита, таким образом можно на все поля навесить обработку и каждому присвоить разные значения из списка.
Тыц.тыц.тыц... Недопонял вначале У Вас жменька разнотиповых реквизитов, и для них Вы хотите эту менюшку прикрутить?
Пусть выкидывают и пишут свою... за одно опять пройдут тот же пусть что и я
Gigi, прочитал о Ваших мучениях, сделал для себя вывод, что: 1. Программист у вас неплохой, но в специфике полный ноль. 2. Вы наоборот, ас в специфике учета но, уж простите, на начальном этапе Ваших злоключений, в кодинге 1С полный ноль. Тем не менее Вы нашли в себе силы и время докопаться до истины. Как результат, статус Вашего коллеги прежний (?), Вы же, помимо знаний о специфике учета смогли получить знания еще и в кодинге. А это большой плюс. 1С тем и характерна, ИМХО, что ценность специалиста базируется как раз не только на знании 1С как предметной области, но и еще и на знании тех самых механизмов, алгоритмов и прочих -измов и -ритмов, характерных для каждого решения. Что касается
Цитата
... откуда вы взяли, что дирекция... типа будет дорожить теми сотрудниками, которые сделали много полезного и решили кучу проблем
Дирекция умеет считать деньги, а специалисты на дороге не валяются... Уволить легко, но если под рукой нет спеца, который с ходу "въедет" в суть задачи, - это потеря времени, а значит и денег. Вы на данный момент ценны для компании тем, что Ваши знания позволяют Вам не только выявить огрехи в алгоритмах учета, но и исправить их, не привлекая к этому сторонних специалистов. Растите дальше. Позволю себе дать Вам совет: подружитесь со штатным кодером. предложите поделиться с ним знаниями по учету, в обмен на его знания предметной области. Даже если Вы не задержитесь в этой компании, Ваши новые знания легко помогут Вам найти достойное место работы. P.S. Думаю, если бы Вы с вашим штатным кодером не дулись друг на друга, а вместе пошли бы к руководству и предложили им разобраться в проблеме, Вам бы не пришлось столько мучиться ))). Впрочем, с другой стороны, путь к звездам лежит через тернии )) и тогда бы не было Вашей истории ( ) Да и опыта... Удачи.
Gigi, если не секрет, с чего вдруг такая паранойя? Немного не понял, что Вам даст шифрование/сокрытие формы? Ну увидит увидит ее Ваш "коллега по цеху", что с того? Поймет с ходу все? Шифруйте содержимое модуля, если уж Вам так приспичило.
А если уж Вам так по душе садо-мазо (не обижайтесь ), оставьте пустую форму, в коде создавайте элементы формы "на лету", то бишь программно, в том числе обработчики нажатий и прочих событий... потом зашифруйте код. Ваш коллега будет видеть только форму пустую, а как на ней режиме пользователя появляется все остальное, пусть будет Вашим секретом ))
Gigi, внешняя компонента - подключаемая dll, в которой Вы описываете функционал. После подключения методы доступны также через "." ( точку ). Ваша dll манипулирует свойствами окна через стандартные функции языка, на котором написана. На дисках ИТС, говорят, есть примеры и шаблоны, в Сети нагуглить тоже можно. В большинстве написано на С++, есть на С#, Delphi ( Pascal). Почитайте тут или тут Ну или пишите в личку, на досуге подсоблю Только учитывайте то, что окна 1С немного отличаются от традиционных и работать с ними слегка геморно.
Stemesseder @ Сегодня, 17:25
, Итак... Создал простенькую ВПФ, стандартно, 1. В реквизитах добавил еще реквизит "ДополнительныеПараметры" (Тип = Произвольный) 2. Перед возвратом ТабДок дописал
Если ЗначениеЗаполнено(ДополнительныеПараметры) Тогда ТабДок.ФиксацияСверху = ДополнительныеПараметры.Фиксация; КонецЕсли;
Далее, "Сервис-ВПФ и обработки - ВПФ" Дополнительные ВПФ - Добавить. Выбираем ВПФ, Принадлежность - добавить. 3. Ваш документ (я брал документ "Реализация товаров и услуг"). 4. В Параметрах Обработки - Задать параметры Имя = Фиксация", Тип Число, Значение = 5 5. В модуле общей формы "ПечатьДокументов" Процедура "ПриОткрытии" добавил
ПечДок и есть Ваш ТабДок. На картинке специально стопанул отладчик на этой строке. Размер фиксации передается. Как-то так... 6. Печатная форма в списке. 7. Как загрузилось... 8. Прокрутил... Скрины добавил 1. 2. 3. 4. 5. 6. 7. 8.
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!