Внешняя Обработка создание ЭСЧФ в 8.2 БУ 1.6(обычные формы). в форме надо добавить реквизит с возможностью отбора по ВидДокумента.

1. 77Viktor77 1 16.06.21 15:42 Сейчас в теме
Внешняя Обработка создание ЭСЧФ в 8.2 БУ 1.6(обычные формы). В форме надо добавить реквизит с возможностью отбора по ВидДокумента.
Вид Документа - заполняется в ЖурналеДокументов.ДокументыКОформлениюЭСЧФ.
Создаю новый реквизит и не могу понять, не вижу ЖурналДокументов. Как сделать выбор и отбор по выбранному?
Найденные решения
58. 77Viktor77 1 21.06.21 14:08 Сейчас в теме
Сейчас попробую структурировать как сделал!
На форме обработке создал элемент формы "ВидДокумента"
Затем создал Реквизит формы, (создавать через новый или + если копированием то не видит путь когда в данные реквизита ставишь) "ВидДокумента" тип "ЖурналДокументовСписок.ДокументыКОформлениюЭСЧФ"
Затем в элемент формы "ВидДокумента" Свойства - Использование - КнопкаСпискаВыбора, КнопкаОчистки.
Затем в модуле формы - Процедура ПриОткрытии() - Добавляю код
"  
Для Каждого ОписаниеМетаданныхДокумента Из Метаданные.ЖурналыДокументов.ДокументыКОформлениюЭСЧФ .РегистрируемыеДокументы Цикл
		ЭлементыФормы.ВидДокумента.СписокВыбора.Добавить(ОписаниеМетаданныхДокумента);
	КонецЦикла;

В элемент формы "ВидДокумента" Свойства - ПриИзменении поставил ОбновитьТЧ()//это места где обновляется у меня Табличная Часть;
Затем в Процедуру ОбновитьТЧ() после выполнения запроса вставил часть кода:
 
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		
		// +++Тут добавил поучение документов если пустая строка, и если стоит значение документа
		ВидДок = СокрЛП(ВидДокумента.Отбор.ВидДокумента.Значение);
	
		Если ПустаяСтрока(ВидДок) Тогда 
			// Вставить обработку выборки ВыборкаДетальныеЗаписи
			НоваяСтрока = ТабличноеПоле1.Добавить();
			ЗаполнитьЗначенияСвойств(НоваяСтрока, ВыборкаДетальныеЗаписи);
		ИначеЕсли СокрЛП(ТипЗнч(ВыборкаДетальныеЗаписи.Ссылка))<>ВидДок тогда
			Продолжить;
		КонецЕсли;//---
		// Вставить обработку выборки ВыборкаДетальныеЗаписи
		НоваяСтрока = ТабличноеПоле1.Добавить();
		ЗаполнитьЗначенияСвойств(НоваяСтрока, ВыборкаДетальныеЗаписи);
		
	КонецЦикла;
;
Показать


Итог все работает!
Отдельное спасибо DenisVol за помощь.
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. DenisVol 3 16.06.21 16:10 Сейчас в теме
Вы хотите чтоб в этом реквизите были определенные виды документов?
3. 77Viktor77 1 16.06.21 16:12 Сейчас в теме
(2)
или так или все.
все виды документов из ЖураналшаДокументов.ДокументыКОформлениюЭСЧФ и там все регистрируемые документы:
4. DenisVol 3 16.06.21 16:13 Сейчас в теме
реквизит с типом ДокументСсылка
5. 77Viktor77 1 16.06.21 16:16 Сейчас в теме
6. DenisVol 3 16.06.21 16:23 Сейчас в теме
тогда не понял. в предприятии откроется весь перечень документов
7. 77Viktor77 1 16.06.21 16:45 Сейчас в теме
(6)Нужно вот как, что бы при формировании ТЧ, показывала только то, что определяется реквизитами выбора.
Прикрепленные файлы:
8. 77Viktor77 1 17.06.21 11:20 Сейчас в теме
Не уже ли ни кто ни знает как это сделать?
11. RustamZz 17.06.21 13:29 Сейчас в теме
(8) Это тип. Значит хранить нужно строку вида ДокументСсылка.РеализацияТоваровУслуг. ЖурналДокументов это таблица на которую нельзя получить ссылку, соответственно и указать в реквизите.
9. DenisVol 3 17.06.21 13:13 Сейчас в теме
этот список документом каким способом формируете? Какой-то запрос?
10. DenisVol 3 17.06.21 13:15 Сейчас в теме
добавьте реквизит ВидДокумента с типом ДокументСсылка. И потом запросом с параметром в запросе равным "ВидДокумента" перезаполняйте ТЧ.
12. DenisVol 3 17.06.21 13:35 Сейчас в теме
(11) надо добавлять отборы:

    ЭтаФорма.ДокументСписок.Отбор.ВидДокумента.ВидСравнения = ВидСравнения.Равно; 
    ЭтаФорма.ДокументСписок.Отбор.ВидДокумента.Значение = ВидДокумента; 
    ЭтаФорма.ДокументСписок.Отбор.ВидДокумента.Использование = Истина;



что так. Чисто интересно правильно ли мыслю?
13. DenisVol 3 17.06.21 14:05 Сейчас в теме
1. Добавляете реквизит "ВидДокумента" (поле ввода). В поле данные указываете "Отбор.ВидДокумента.Значение".
2. В модуле формы делаете такую процедуру
Процедура ВидДокументаПриИзменении(Элемент)
	Отбор.ВидДокумента.Использование = Элемент.Значение <> Неопределено;	
КонецПроцедуры

3.Указываете эту процедуру ПриИзменении реквизита "ВидДокумента"
14. 77Viktor77 1 17.06.21 14:08 Сейчас в теме
(13)
Процедура ВидДокументаПриИзменении(Элемент)
Отбор.ВидДокумента.Использование = Элемент.Значение <> Неопределено;
КонецПроцедуры




А отборы куда пишем?
15. DenisVol 3 17.06.21 14:09 Сейчас в теме
Потом пишим процедуру ПриОткрытии()
Процедура ПриОткрытии()
	Для Каждого ОписаниеМетаданныхДокумента Из Метаданные.ЖурналыДокументов.ДокументыКОформлениюЭСЧФ .РегистрируемыеДокументы Цикл
        ЭлементыФормы.ВидДокумента.СписокВыбора.Добавить(ОписаниеМетаданныхДокумента);
    КонецЦикла;
КонецПроцедуры


и ципляете эту процедуру на форму обработки ПриОткрытии
16. DenisVol 3 17.06.21 14:12 Сейчас в теме
у вас в форме обработки должен быть реквизит ДокументыКОформлениюЭСЧФ с типом ЖурналДокументов.ДокументыКОформлениюЭСЧФ. И вот когда вы добавляете поле ввода и поляне "Данные"

там и будут отбор
17. DenisVol 3 17.06.21 14:14 Сейчас в теме
18. 77Viktor77 1 17.06.21 14:16 Сейчас в теме
(17)
ДокументыКОформлениюЭСЧФ


выдает ошибку
{Форма.Форма.Форма(342,2)}: Переменная не определена (Отбор)
<<?>>Отбор.ВидДокумента.Использование = Элемент.Значение <> Неопределено; (Проверка: Толстый клиент (обычное приложение))
19. 77Viktor77 1 17.06.21 14:18 Сейчас в теме
вот
Прикрепленные файлы:
20. DenisVol 3 17.06.21 14:21 Сейчас в теме
у меня вот так выглядит этот реквизит
21. DenisVol 3 17.06.21 14:22 Сейчас в теме
добавьте реквизит на вкладке "реквизиты", которая рядом возле "модуль"
22. пользователь 17.06.21 14:25
Сообщение было скрыто модератором.
...
23. 77Viktor77 1 17.06.21 14:25 Сейчас в теме
и у меня
Прикрепленные файлы:
24. 77Viktor77 1 17.06.21 14:28 Сейчас в теме
Не понял только куда
  ЭтаФорма.ДокументСписок.Отбор.ВидДокумента.ВидСравнения = ВидСравнения.Равно; 
    ЭтаФорма.ДокументСписок.Отбор.ВидДокумента.Значение = ВидДокумента; 
    ЭтаФорма.ДокументСписок.Отбор.ВидДокумента.Использование = Истина;

25. DenisVol 3 17.06.21 14:29 Сейчас в теме
(24) это не надо. то я так предполагал изначально
26. 77Viktor77 1 17.06.21 14:30 Сейчас в теме
пока ругается на отбор !

{Форма.Форма.Форма(342,2)}: Переменная не определена (Отбор)
<<?>>Отбор.ВидДокумента.Использование = Элемент.Значение <> Неопределено; (Проверка: Толстый клиент (обычное приложение))
27. DenisVol 3 17.06.21 14:38 Сейчас в теме
только вместо "ДокументыКонтрагентов", у Вас д.б. ДокументыКОформлениюЭСЧФ и уже там отбор
Прикрепленные файлы:
28. пользователь 17.06.21 14:48
Сообщение было скрыто модератором.
...
29. DenisVol 3 17.06.21 14:48 Сейчас в теме
вот что в поле ввода
Прикрепленные файлы:
30. 77Viktor77 1 17.06.21 14:57 Сейчас в теме
у мене так
Прикрепленные файлы:
31. 77Viktor77 1 17.06.21 15:00 Сейчас в теме
и вот
Прикрепленные файлы:
32. DenisVol 3 17.06.21 15:02 Сейчас в теме
и продолжает ругаться? Что то у нас не сходится
33. DenisVol 3 17.06.21 15:03 Сейчас в теме
по разному сделано что-то. А конфигурация какая?
35. 77Viktor77 1 17.06.21 15:08 Сейчас в теме
(33)
все есть просто надо было добавить ДокументыКОформлениюЭСЧФ.Отбор.ВидДокумента.Использование
Прикрепленные файлы:
34. DenisVol 3 17.06.21 15:05 Сейчас в теме
увидел уже. такой у меня нет вналичии
36. 77Viktor77 1 17.06.21 15:09 Сейчас в теме
А как теперь что бы обновлялось в ТЧ?
37. DenisVol 3 17.06.21 15:12 Сейчас в теме
ну этом реквизите должна быть процедура
Процедура ВидДокументаПриИзменении(Элемент)
              Отбор.ВидДокумента.Использование = Элемент.Значение <> Неопределено;
КонецПроцедуры
38. DenisVol 3 17.06.21 15:12 Сейчас в теме
у меня при изменении вида документа ТЧ сразу изменяется и обновляется
39. 77Viktor77 1 17.06.21 15:16 Сейчас в теме
(38)
я отладчиком попадаю но смотрю там пусто!
Прикрепленные файлы:
40. 77Viktor77 1 17.06.21 15:25 Сейчас в теме
или может при обновлении ТЧ могло учитывать ВидДокумента?
41. DenisVol 3 17.06.21 15:32 Сейчас в теме
а на свойствах формы у Вас как данные указаны?
Прикрепленные файлы:
42. 77Viktor77 1 17.06.21 15:34 Сейчас в теме
вот
Прикрепленные файлы:
43. 77Viktor77 1 17.06.21 15:38 Сейчас в теме
вот по подробнее
Прикрепленные файлы:
44. DenisVol 3 17.06.21 15:41 Сейчас в теме
а на ТЧ, что у Вас стоят какие данные?
45. 77Viktor77 1 17.06.21 16:22 Сейчас в теме
вот
Прикрепленные файлы:
46. 77Viktor77 1 17.06.21 16:23 Сейчас в теме
и вот
Прикрепленные файлы:
47. 77Viktor77 1 17.06.21 16:25 Сейчас в теме
и наконец вот
Прикрепленные файлы:
48. DenisVol 3 17.06.21 16:46 Сейчас в теме
вот моя обработка просмотрите все вниманительно
Прикрепленные файлы:
ДокументыОтбор.epf
49. DenisVol 3 17.06.21 16:54 Сейчас в теме
попробуйте заменить реквизит на свой и модуле просмотрите. А потом уже в своей обработке попробуйте воспроизвести
51. 77Viktor77 1 17.06.21 17:12 Сейчас в теме
(49)даже в твоей обработке поменял реквизит и в модуле формы на свой и при открытии не чего не отбирает.
Прикрепленные файлы:
50. 77Viktor77 1 17.06.21 17:03 Сейчас в теме
52. 77Viktor77 1 17.06.21 17:46 Сейчас в теме
Дело в том что я получаю список документов из запроса и надо как то подтянуть параметр что бы при обновлении он учитывался.
53. DenisVol 3 18.06.21 08:42 Сейчас в теме
У тебя реквизит "ДокументыКОформлениюЭСЧФ" тип строка, а у меня "ЖурналДокументов.". А где у тебя в запросе параметр на вид документа при обновить ТЧ.

Запрос рабочий, он выводит документы?
56. 77Viktor77 1 18.06.21 11:18 Сейчас в теме
(53) сейчас добавляю параметр "вид документа". с Журналом сейчас посмотрю.
Сравнивал, хотел посмотреть результат в запросе и какая-то хрень не вижу результата, а как переписал точь-в-точь все показала! Прям БЕСИТ!!!
54. DenisVol 3 18.06.21 08:43 Сейчас в теме
вот так сделай
Процедура ВидДокументаПриИзменении(Элемент)
	//ДокументыКОформлениюЭСЧФ.Отбор.ВидДокумента.Использование = Элемент.Значение <> Неопределено;
	ОбновитьТЧ();
КонецПроцедуры
77Viktor77; +1 Ответить
55. DenisVol 3 18.06.21 08:53 Сейчас в теме
и таблица у тебя ТаблицаЗначений, а у меня вот так. Конфигурации у меня такой нет
Прикрепленные файлы:
57. DenisVol 3 18.06.21 11:33 Сейчас в теме
(56) мне кажется, слишком усложнил себе задачу. если формируешь с помощью запроса, то в запросе необходимо учитывать параметр "ВидДокумента"
58. 77Viktor77 1 21.06.21 14:08 Сейчас в теме
Сейчас попробую структурировать как сделал!
На форме обработке создал элемент формы "ВидДокумента"
Затем создал Реквизит формы, (создавать через новый или + если копированием то не видит путь когда в данные реквизита ставишь) "ВидДокумента" тип "ЖурналДокументовСписок.ДокументыКОформлениюЭСЧФ"
Затем в элемент формы "ВидДокумента" Свойства - Использование - КнопкаСпискаВыбора, КнопкаОчистки.
Затем в модуле формы - Процедура ПриОткрытии() - Добавляю код
"  
Для Каждого ОписаниеМетаданныхДокумента Из Метаданные.ЖурналыДокументов.ДокументыКОформлениюЭСЧФ .РегистрируемыеДокументы Цикл
		ЭлементыФормы.ВидДокумента.СписокВыбора.Добавить(ОписаниеМетаданныхДокумента);
	КонецЦикла;

В элемент формы "ВидДокумента" Свойства - ПриИзменении поставил ОбновитьТЧ()//это места где обновляется у меня Табличная Часть;
Затем в Процедуру ОбновитьТЧ() после выполнения запроса вставил часть кода:
 
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		
		// +++Тут добавил поучение документов если пустая строка, и если стоит значение документа
		ВидДок = СокрЛП(ВидДокумента.Отбор.ВидДокумента.Значение);
	
		Если ПустаяСтрока(ВидДок) Тогда 
			// Вставить обработку выборки ВыборкаДетальныеЗаписи
			НоваяСтрока = ТабличноеПоле1.Добавить();
			ЗаполнитьЗначенияСвойств(НоваяСтрока, ВыборкаДетальныеЗаписи);
		ИначеЕсли СокрЛП(ТипЗнч(ВыборкаДетальныеЗаписи.Ссылка))<>ВидДок тогда
			Продолжить;
		КонецЕсли;//---
		// Вставить обработку выборки ВыборкаДетальныеЗаписи
		НоваяСтрока = ТабличноеПоле1.Добавить();
		ЗаполнитьЗначенияСвойств(НоваяСтрока, ВыборкаДетальныеЗаписи);
		
	КонецЦикла;
;
Показать


Итог все работает!
Отдельное спасибо DenisVol за помощь.
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)