Имя: Пароль:
1C
1C 7.7
v7: Отбор журнала при выборе заказа
,
0 sivsoft
 
12.06.13
10:46
Доброго времени суток!
Есть Приходная Накладная, в ней поле Заказ, имеющее тип Документ.Заказ. Как сделать, чтобы при выборе заказа(открытии журнала заказы) отбор производился по текущему контрагенту Приходной Накладной?
1 viktor_vv
 
12.06.13
10:49
Это отдельный журнал сделать с видом Общий, добавить графу отбора куда закинуть контаргента из Документа заказ.
В приходной ПРиНачалеВыбораЗначения() прописать открытие этого журнала с установленным отбором.
2 Mikeware
 
12.06.13
10:50
Не проще и логичнее ли ли делать наоборот- Приходную  на основании Заказа?
3 viktor_vv
 
12.06.13
10:55
(2) +1. Разве что иногда надо поменять заказ.
(1)+ Дополнительный общий журнал может и не надо заводить, скорее всего уже есть какой-нибудь.
4 sivsoft
 
12.06.13
10:58
(3) Спасибо попробую. А отбор установить в смысле УстановитьОтбор? Простите за тафтологию :)
5 sivsoft
 
12.06.13
11:00
(2) Поле же добавил в Приходную накладную, там выбирает бух заказ... А забыл написать ПриходнаяНакладная(запасы).
6 viktor_vv
 
12.06.13
11:18
(4) Типа того

Процедура ПриНачалеВыбораЗначения(ИдентЭлемДиалога,ФлагСтандОбр)
   Перем Фрм ;
   Если ИдентЭлемДиалога = "ДокЗаказ" Тогда
       ФлагСтандОбр = 0 ;
       ОткрытьПодбор("Журнал.ОтборЗаказов","ФормаСписка",Фрм);
       Фрм.УстановитьОтбор("ГрафаОтбораКлиентВЗаказе",Контаргент);
       //Фрм.УстановитьОтбор("СчетОплата");
7 sivsoft
 
12.06.13
12:13
(6) Не получается что-то. Записал так:
Перем Фрм;
Если Рекв = "Заказ" Тогда
   ФлагСтандОбр = 0;
   ОткрытьПодбор("Журнал.ЗаказыОбщий","ФормаСписка",Фрм);
       Фрм.УстановитьОтбор("Контрагент",Контрагент);
КонецЕсли;

Обращается, задействует журнал ЗаказыОбщий, но журнал открывается во-первых, без значения в поле Контрагент(т.е. поле почему-то пустое, хотя отбор происходит), во-вторых, открывается полный журнал со всеми документами, а не только с заказами.
8 viktor_vv
 
12.06.13
13:01
(7) А Контаргент это что - общий реквизит документов с включенным отбором или Графа отбора журнала? Если графа отбора, смотри что там в нее включено.
Если тебе еще и реквизит формы заполнить, то

   ОткрытьПодбор("Журнал.ЗаказыОбщий","ФормаСписка",Фрм);
Фрм.ИдентификаторРеквизитаФормы = Контаргент ;
       Фрм.УстановитьОтбор("Контрагент",Контрагент);

В общем случае реквизит формы никак не связан с отбором.
9 sivsoft
 
12.06.13
13:38
(8) С не отображением Контрагента уже понял. Что я хотел, если так стоит Контрагент из Заказы? В общем понятно это.

Наверное больше всего интересует, как сделать множественный отбор. Дело в том, что отбираются ВСЕ документы(и банковские выписки, и договора, и приходные накладные - все вообще) по данному контрагенту. А мне то нужны ТОЛЬКО заказы.
10 Mikeware
 
12.06.13
13:40
(9) только составным реквизитом.
ну, или "нетрадиционными способами"
кстати, подскажу, что выбирать в данном случае можно не только из журнала.
11 sivsoft
 
12.06.13
13:52
(10) А что значит составной реквизит? И отбор производится так же, как и выше в листинге или мудрить что надо?
12 viktor_vv
 
12.06.13
14:18
Да не надо составной реквизит.
Ты скажи точно Конатргент это ГрафаОтбора ?
13 viktor_vv
 
12.06.13
14:19
Заведи еще одну графу отбора, в нее добавь только реквизит Контрагент из заказа, и по нему отбор устанавливай.
14 sivsoft
 
12.06.13
14:56
(13) Сделал журнал с типом Общий, он туда засунул все возможные документы. Графа в журнале одна называется Контрагент, имеющая значение Документ.Заказ.Контрагент.
При попытке выбора Заказа(поле Заказ в таблице документа ПриходнаяНакладнаяЗапасы) он выводит этот журнал, но в журнале ВСЕ документы какие были по этому контрагенту(понятно учитывая период времени).
15 1Сергей
 
12.06.13
15:39
(14) перечитай 13.
16 viktor_vv
 
12.06.13
15:40
(14) Ну ты как бы графу отбора с графой журнала путаешь.
Открой в ветке Журалы документов первый пункт "Графы отбора" и там созда графу отбора с включением реквизита Контаргент из Заказа.
17 Ковычки
 
12.06.13
15:45
составной общий реквизит
18 1Сергей
 
12.06.13
15:47
(17) не нужно
19 sivsoft
 
12.06.13
15:52
(16) Действительно путаю. В "Графы отбора" создал назвал ЗаказКонтрагент.
1. Его и вписывать в УстановитьОтбор, типа Фрм.УстановитьОтбор("ЗаказКонтрагент",Контрагент)?
2. В самом журнале надо графы создавать?
20 viktor_vv
 
12.06.13
15:55
(19) 1. Да.
2. Не обязательно, чисто в целях вывода информации, если необходимо.
21 sivsoft
 
12.06.13
16:36
(20) Огромнейшее спасибо - все получилось :) :) :)
2 + 2 = 3.9999999999999999999999999999999...