Имя: Пароль:
1C
1C 7.7
v7: Доступ к подчиненному справочнику из запроса
0 bananan
 
24.12.12
17:13
Есть запрос такой:
Период с ДатаС по ДатаПо;
                   |ОбрабатыватьДокументы Проведенные;
                   |Количество = Документ.РасходнаяНакладная.Кво, Документ.РасходнаяНакладнаяН.Кво;
                   |Код = Документ.РасходнаяНакладная.ТМЦ.Код, Документ.РасходнаяНакладнаяН.ТМЦ.Код;
                   |ТМЦ = Документ.РасходнаяНакладная.ТМЦ, Документ.РасходнаяНакладнаяН.ТМЦ;
                   |Функция Колво = Сумма(Количество);
                   |Группировка Документ;
                   |Группировка ТМЦ;
                   |Условие (ТМЦ в выбТМЦ);";
Я пробывал так:
   |ПодчСпр=Справочник.ДополнительныеСведения.ТекущийЭлемент;
                   |Условие(ПодчСпр.Владелец=ТМЦ);";
Выдает:
Если Запр.Выполнить(ТекстЗапроса)=0 Тогда
{\\SERVER12\VPKTEST$\EXTFORMS\РАС.ERT(93)}: ПодчСпр=Справочник. <<?>> ДополнительныеСведения.ТекущийЭлемент;
Запрос[10] : Неверно заданный путь 'ДополнительныеСведения'
Если Запр.Выполнить(ТекстЗапроса)=0 Тогда
{\\SERVER12\VPKTEST$\EXTFORMS\РАС.ERT(93)}: Условие(ПодчСпр.Владелец=ТМЦ <<?>> );
Запрос[11] : Ошибка в услови
Т.е. как мне правильно обратиться к подчиненному справочнику?
1 Ёпрст
 
24.12.12
17:14
зачем ?
2 Sh1ko
 
24.12.12
17:14
Не совсем понятно каким боков подчиненный справочник к запросу по документам.
3 bananan
 
24.12.12
17:15
Шеф сказал что нужно делть так. Хотя оно у меня и без обрщения из запроса работает нормально. но, я здесь пока 3-й день и спорить с шефом как-то не выходит...
4 Sh1ko
 
24.12.12
17:16
(3) Тебе шеф именно строку запроса продиктовал?
5 КонецЦикла
 
24.12.12
17:16
(0) Освой, наконец, конструктор запросов
Он не позволит писать дебильные запросы
6 bananan
 
24.12.12
17:16
(2) В документе (табличная часть) есть номенклатура (справочник ТМЦ), ей и подчинен справочник ЕдИзм
7 ДенисЧ
 
24.12.12
17:17
|ТМЦ = Документ.РасходнаяНакладная.ТМЦ, Документ.РасходнаяНакладнаяН.ТМЦ,Справочник.ДополнительныеСведения.Владелец;

...
8 palpetrovich
 
24.12.12
17:17
это просто праздник какой-то (цы) :)
9 bananan
 
24.12.12
17:17
(5) Освоить как? - методом тыка?
10 Ёпрст
 
24.12.12
17:17
(6) Шо опять ?

Предыдущие темы пишет твой клон, или твой шеф ?
11 bananan
 
24.12.12
17:18
(10) Клон
12 Sh1ko
 
24.12.12
17:18
(6) Ок, а при чем тут Справочник.ДополнительныеСведения?
13 Mikeware
 
24.12.12
17:18
(5) ему - позволит :-)
14 bananan
 
24.12.12
17:18
Да просто-напросто покажите как это сделать
15 Sh1ko
 
24.12.12
17:18
(14) Да просто-напросто сформулируй задачу, которую тебе поставил шеф
16 bananan
 
24.12.12
17:19
(12) Увидел такое обращение к подчиненному справочнику в какой-то ветке на даном форуме
17 Sh1ko
 
24.12.12
17:19
(16) Зашибись ты придумал.
18 bananan
 
24.12.12
17:20
(15) в документах количество указывается в разныз еденицах измерения, мне нужно показать сколько в ящиках продано даного ТМЦ, сколько в ящиках продано по даному документу и сколько в ящиках по всех документах за даный период
19 Ёпрст
 
24.12.12
17:21
(18) читай (52) пост в предудыщей серии, клону привет!
20 bananan
 
24.12.12
17:29
(19) Сейчас  еще раз прочитал НЕ ПОНИМАЮ каким образом ті вічисляещб коєффициент
|Коэффициент = Документ.РасходнаяНакладная.Сумма, Документ.РасходнаяНакладнаяН.Сумма;
бвлеберда какая-то а не коеффициент
21 bananan
 
24.12.12
17:30
(19) У Тебя коэффициент РАВЕН сумме документа, это как и на каком языке?
22 Ёпрст
 
24.12.12
17:32
(20) читай ниже
23 Ёпрст
 
24.12.12
17:33
(101) пост
24 bananan
 
24.12.12
17:33
(19) и ко всему прочему код, который ты дал выдает:
Если Запр.Выполнить(ТекстЗапроса)=0 Тогда
{\\SERVER12\VPKTEST$\EXTFORMS\РАС013.ERT(98)}: Функция Колво = Сумма(Количество*Коэффициент <<?>> );
Запрос[6] : Ошибка в выражении 'Коэффициент'
Если Запр.Выполнить(ТекстЗапроса)=0 Тогда
{\\SERVER12\VPKTEST$\EXTFORMS\РАС013.ERT(98)}: Функция КоличествоЯщиков = Сумма(ПересчетВЯщики(ТМЦ,Количество*Коэффициент <<?>> ));
Запрос[7] : Ошибка в выражении 'Коэффициент'
Если Запр.Выполнить(ТекстЗапроса)=0 Тогда
{\\SERVER12\VPKTEST$\EXTFORMS\РАС013.ERT(98)}: Условие (ТМЦ в выбТМЦ <<?>> );
Запрос[10] : Ошибка в условии
25 Ёпрст
 
24.12.12
17:35
(24) дай мд в архиве посмотреть.
26 bananan
 
24.12.12
17:36
(23) а |Коэффициент = Документ.РасходнаяНакладная.Коэффициент, Документ.РасходнаяНакладнаяН.Коэффициент;

выдаст совсем не тот коэффициент. который надо, а надо коефициент для едюизмерения ящик к данной еденице измерения (которая указана в расходной накладной)
27 bananan
 
24.12.12
17:37
(25) Сори что туплю, а как это сделать?
28 Ёпрст
 
24.12.12
17:37
(27) открыть каталог с базой в проводнике, найти в нём файл 1cv7.md, закинуть в архив, далее на файлопомойку, ссылку сюда
29 palpetrovich
 
24.12.12
17:38
(26) даст именно тот что в РасходнаяНакладная или РасходнаяНакладнаяН
30 bananan
 
24.12.12
17:38
(28) адрес како-нибудь файломойки
31 Ёпрст
 
24.12.12
17:38
(26) какой догадливый. Угадай, для чего этот коэффициент вообще введен в табличную часть документа ?
32 Ёпрст
 
24.12.12
17:38
ifolder.ru
33 Sh1ko
 
24.12.12
17:40
Походу кончится тем, что Епрст приедет в Ровно, и сделает все сам.
34 bananan
 
24.12.12
17:42
35 palpetrovich
 
24.12.12
17:44
(33) приезжать-то зачем? ...бывают  моменты когда совпадают свободное время и приступ благотворительности  ;)
36 palpetrovich
 
24.12.12
17:45
(34) браво, "закинуть в архив" - как-то незаметно было написано :)))
37 bananan
 
24.12.12
17:47
(36) пардон сча кину в архиве
38 Sh1ko
 
24.12.12
17:48
как архивировать в курсе?
39 Mikeware
 
24.12.12
17:49
(35) приезжать - это когда в один момент совпадет свободное время и приступ ярости...
40 bananan
 
24.12.12
17:50
41 palpetrovich
 
24.12.12
17:51
(39) :)
42 bananan
 
24.12.12
17:52
(28) http://rusfolder.com/34266012
так пойдет?
43 Ёпрст
 
24.12.12
17:53
Перем Спр;
//======================================================================
Функция ПересчетВЯщики(ТМЦ,Количество)
   Спр.ИспользоватьВладельца(ТМЦ);
  // Спр.ВыбратьЭлементыПоРеквизиту("Ед",Перечисление.Единицы.ящик,1,0);
   Спр.ВыбратьЭлементы();
   Пока Спр.ПолучитьЭлемент() = 1 Цикл
       Если (Спр.ПометкаУдаления()=0)И(Спр.Ед = Перечисление.Единицы.ящик) Тогда
           Возврат Количество/?(Спр.Коэффициент=0,1,Спр.Коэффициент);
       КонецЕсли;
   КонецЦикла;
   Возврат Количество;
КонецФункции //
Процедура Сформировать()
   Спр = СоздатьОбъект("Справочник.ЕдИзм");
   ТекстЗапроса = "
   |Период с НачДата По КонДата;
   |Количество = Документ.РасходнаяНакладная.Кво, Документ.РасходнаяНакладнаяН.Кво;
   |Коэффициент = Документ.РасходнаяНакладная.Коэффициент, Документ.РасходнаяНакладнаяН.Коэффициент;
   |ТМЦ = Документ.РасходнаяНакладная.ТМЦ, Документ.РасходнаяНакладнаяН.ТМЦ;
   |Функция Колво = Сумма(Количество*Коэффициент);
   |Функция КоличествоЯщиков = Сумма(Количество-Количество+ПересчетВЯщики(ТМЦ,Количество*Коэффициент));
   |Группировка Документ;
   |Группировка ТМЦ;
   |Условие (ТМЦ в выбТМЦ);";
44 Ёпрст
 
24.12.12
17:53
на, наслаждайся
45 palpetrovich
 
24.12.12
17:57
(44) наслаждение боюсь будет неполным ибо где "Таб.ВывестиСекцию("ТМЦ")" и т.д. :)
46 bananan
 
24.12.12
17:57
(43) В результате выдал мне
АТ-0039294        
товар кг        Количество
товар шт        Количество
товар ящ        Количество
Всего по документу        0
АТ-0039295        
товар шт        Количество
Всего по документу        0
АТ-0039296        
товар ящ        Количество
Всего по документу        0
ну и т.д.
47 bananan
 
24.12.12
17:58
в окне сообщений выдал :
48 bananan
 
24.12.12
17:58
Количество<<?>>
Переменная не определена (Количество)
Количество<<?>>
ну и т.д.
49 bananan
 
24.12.12
18:01
Извениете с этим разобрался, а как теперь в этом же запросе считать к-во ящиков по документах и по всех документах - таким же образом написать функцию?
50 Sh1ko
 
24.12.12
18:02
(49) Группировка.
51 Sh1ko
 
24.12.12
18:03
Открой желто-красную книжку и прочитай зачем в запросе группировки и функции
52 palpetrovich
 
24.12.12
18:13
53 bananan
 
24.12.12
18:20
(52) И что это за фигня, которая даже не работает:
54 bananan
 
24.12.12
18:21
+(53) в ней несчитается сумма ящиков по документу ну и вообще по всех документах
55 palpetrovich
 
25.12.12
14:01
(53) хамство детектед, все прекрасно работает http://rusfolder.com/foto/view_foto/0_fhlo6940rm/
и если уж так лень поправить пару строчек -  http://rusfolder.com/34279035
56 Ёпрст
 
25.12.12
14:05
(55) это уже пройденный этап, уже на 1cpp автор подсел.

Подвинтесь, мастадонты!
57 palpetrovich
 
25.12.12
14:09
(56) пипец, я уже боюсь :)