Имя: Пароль:
1C
1C 7.7
v7: Запрос на просмотр расходных накладных
,
0 bananan
 
19.12.12
19:41
Добрый вечер. Подскжите пж, а то я что-то торможу.
Мне нудно просмотреть вернее обработаь табличные части расходных накладных за заданый период. Подскажите пожалуйста, текст запроса...
107 Стрелок
 
20.12.12
14:08
(106) может не надо? а то ещё один архитектор британский получится...
108 bananan
 
20.12.12
14:15
Рпебята, я понимаю что явно где-то туплю, но вот где не могу понять...
Оставил такой код:
Процедура Сформировать(Режим)          
   Если ДатаПо<ДатаС Тогда                  
       Сигнал();
       Предупреждение("Дата кінця періоду не може бути меншою за дату початку періоду!");
       Возврат;
   КонецЕсли;
   Если (сВидУчета.ПолучитьЗначение(сВидУчета.ТекущаяСтрока())="Бухгалтерия")
       и (выбФирма.Выбран()=0) Тогда
       Предупреждение("Выберите фирму!");
       Возврат;
   КонецЕсли;

   Запр = СоздатьОбъект("Запрос");
   Таб = СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица("Проба");
   ТекстЗапр = "";
   Заг = "";
   Заг1 = "";
   Заг2 = "";

   ПозицияОтчета = ДатаПо;


   ТекстЗапроса = "Период с ДатаС по ДатаПо;
                   |ОбрабатыватьДокументы Проведенные;
                   |Количество = Документ.РасходнаяНакладная.Кво;
                   |Функция Колво = Сумма(Количество);";
   Если Запр.Выполнить(ТекстЗапроса)=0 Тогда
       Возврат;                          
   Иначе
       Сообщить("Запрос выполнен");
   КонецЕсли;
   
   Таб.ВывестиСекцию("Шапка");
                       
   Сообщить("Таб.ВывестиСекцию(Шапка) - сделано!");
   Сообщить("Таб.ВывестиСекцию(Тело) - сделано!");
   Возврат;

   Таб.Опции(0,0,Таб.ВысотаСекции("Шапка"),0);
   Таб.ТолькоПросмотр(1);
   Таб.Защита(Константа.ФлагЗащитыТаблиц);
   Таб.Показать("Расход","");
КонецПроцедуры
В окне сообщений выдает:
Запрос выполнен
Таб.ВывестиСекцию(Шапка) - сделано!
Таб.ВывестиСекцию(Тело) - сделано!
а таблицы НЕТ!!!
109 Ёпрст
 
20.12.12
14:16
(108)утомил

  Сообщить("Таб.ВывестиСекцию(Шапка) - сделано!");
   Сообщить("Таб.ВывестиСекцию(Тело) - сделано!");
 //  Возврат;
//Чего, совсем не видно ?!!!!!!!!!!!!!!
110 Стрелок
 
20.12.12
14:16
ВОЗВРАТ УБЕРИ В СТРОКАХ

Сообщить("Таб.ВывестиСекцию(Шапка) - сделано!");
   Сообщить("Таб.ВывестиСекцию(Тело) - сделано!");
   Возврат;
111 1Сергей
 
20.12.12
14:17
про Возврат ещё не сказали?
112 bananan
 
20.12.12
14:18
(110) Спасибо!
113 Стрелок
 
20.12.12
14:19
(109) видишь - ты мелко написал - он не увидел - спасибо мне сказал ;)
114 Злопчинский
 
20.12.12
14:52
(102) я понимаю, откуда это.
я спрашиваю - это что?
.
а это что за изврат?
.
   |Группировка ТекДок Упорядочить по ТекДок.НомерДок;  
   |Группировка НомерДок;
.
какой смысл группировать по документам (то понятно!) а внутри ОДНОГО документа ГРУППИРОВАТЬ по номерам ОДНОГО документа..????
115 ADirks
 
20.12.12
14:55
(114) вот ты реально щас придираешься :)
это уже так, мелочь
116 Злопчинский
 
20.12.12
15:09
(115) Скажи "нет" быдлокоду! ;-)
117 Mikeware
 
20.12.12
15:11
(116) по сравнению с тем, что у бананана хоть что-то забанананило, группировки - мелочь...
118 bananan
 
20.12.12
15:30
(114) Єто все из конфигурации...
119 Злопчинский
 
20.12.12
15:48
120 Злопчинский
 
20.12.12
15:48
(118) я так понял - конфигурация не твоя и ты здесь не при чем? ;-0
121 bananan
 
20.12.12
15:53
Ребята, еще такой вопрос вот помню что номер документа зарезервированое поле в 1с, но как оно называется?
122 bananan
 
20.12.12
15:54
(120) а конфигурации - точно - не моя
123 Злопчинский
 
20.12.12
16:11
Док.НомерДок
Док.ДатаДок
- предопределенные реквизиты
124 Mikeware
 
20.12.12
16:27
(121) и СП у тебя украли....
125 bananan
 
20.12.12
16:46
Еще вопрос в запросе мне надо обрабатывать/просматривать два вида документов: РасходнаяНакладная и НакладнаяН.
Как это описать в запросе?
126 Mikeware
 
20.12.12
16:50
(125) может, ваша контора найдет таки себе программиста?
127 bananan
 
20.12.12
16:57
(126) Ищут пока. А даный запрос нужно сделать сйчас... :(
128 Стрелок
 
20.12.12
17:05
Фирма=Документ.Расходная.Фирма,Документ.Приходная.Фирма

и так по всем совпадающим реквизитам
129 bananan
 
20.12.12
17:12
(128) Спасибо сейчас попробую
130 bananan
 
20.12.12
17:20
(128) выдает: Количество = Документ.РасходнаяНакладная.Кво,  <<?>> , Документ.РасходнаяНакладнаяН.Кво;
131 bananan
 
20.12.12
17:22
Т.е. не понимает 1С такого синтаксиса пишет: "Неожиданное выражение2
132 bananan
 
20.12.12
17:24
(128) Извините, я лишнюю запятую поставил - потому и неожиданное выражение :)
133 bananan
 
21.12.12
16:32
Ребяята. еще вопрос (что-то я сэтим концом света торможу):
код простой :
   ЕдИ = Создатьобъект("Справочник.ЕдИзм");
   ЕдИ.НайтиПоНаименованию("бл.");
Пишу Сообщить(": "+ЕдИ.Наименование);
в окне вывода только :
что здесь не так?
134 Mikeware
 
21.12.12
16:35
(133) не знаток незалежних конфигураций, но опасаюсь, что 1)единицы подчинены номенклатуре 2)у единиц нет наименования
135 Ёпрст
 
21.12.12
16:35
(133) не нашел он ничего
136 Ёпрст
 
21.12.12
16:36
+ единицы, скорее всего подчиненный справочник..и там есть один ньюанс
:)
137 bananan
 
21.12.12
16:39
(136) Точно! Спасибо.
138 bananan
 
21.12.12
16:50
Все-равно что-то у меня не получается. Справочник ЕДИзм в данном случае подчинен справочнику ТМЦ. Нужно сначала выбрать ээлемент ТМЦ потом указать что он Владелец для ЕдИзм или как?
139 bananan
 
21.12.12
16:54
код дал такой:
ЕдИ = Создатьобъект("Справочник.ЕдИзм");
   ЕдИ.ИспользоватьВладельца("ТМЦ");
   ЕдИ.НайтиПоНаименованию("бл.");
   ЕдИ.ВыбратьЭлементы();
   Сообщить("Текущий: "+ЕдИ.ТекущийЭлемент());
   Сообщить(": "+ЕдИ.Наименование);
Выдает после текста в кавычках пустое место :(
140 bananan
 
21.12.12
16:55
т.е. в окне сообщений:
Текущий:
:
141 oslokot
 
21.12.12
16:57
(139) про ньюанс (136) ты так и не понял
142 bananan
 
21.12.12
16:58
(141) А какой ньюанс?
143 Mikeware
 
21.12.12
16:58
(141) "он не острый, он хронический..."©
144 bananan
 
21.12.12
17:00
(143) Смешно.. Просто видно ты сам того ньюанса не знаешь...
145 Mikeware
 
21.12.12
17:00
(144) читай (134), и СП
146 bananan
 
21.12.12
17:01
(145) У едениц есть наименования! Это точно, ну и они подчененцы номенклатуре
147 Ёпрст
 
21.12.12
17:02
>>>ЕдИ.ИспользоватьВладельца("ТМЦ");

вот тут лажа, в НайтиПоНаименованию есть еще параметры
148 Mikeware
 
21.12.12
17:04
(147) пля, я даж не обратил внимание, чего он надолбил в параметре ИспользоватьВладельца....
149 bananan
 
21.12.12
17:04
НРаписал так:
ЕдИ = Создатьобъект("Справочник.ЕдИзм");
   ЕдИ.ИспользоватьВладельца("ТМЦ");
   ЕдИ.НайтиПоНаименованию("бл.", 1);
   ЕдИ.ВыбратьЭлементы();
   Сообщить("Текущий: "+ЕдИ.ТекущийЭлемент());
   Сообщить(": "+ЕдИ.Наименование);
В олкне сообщений:
Текущий:
:
Текущий:
:
150 Ёпрст
 
21.12.12
17:05
(148) ага, дальше еще интереснее.. выборка после поиска
:)
151 Mikeware
 
21.12.12
17:05
клиника, куле...
152 Stella0608
 
21.12.12
17:14
Всю ветку не осилила.
Вот это что?!

Запр = СоздатьОбъект("Запрос");
...
ТекстЗапроса=
...
Если Запр.Выполнить(ТекстЗапр)=0 Тогда
Что содержит переменная "ТекстЗапр"?
153 bananan
 
21.12.12
17:14
(150)(151)Вы подсказать можете?
154 bananan
 
21.12.12
17:15
(152) ТекстЗапроса = " Период с ДатаС по ДатаПо;
                   |ОбрабатыватьДокументы Проведенные;
                   |Един = Документ.РасходнаяНакладная.Ед, Документ.РасходнаяНакладнаяН.Ед;
                   |Количество = Документ.РасходнаяНакладная.Кво, Документ.РасходнаяНакладнаяН.Кво;
                   |ТМЦ = Документ.РасходнаяНакладная.ТМЦ, Документ.РасходнаяНакладнаяН.ТМЦ;
                   |Функция Колво = Сумма(Количество);
                   |Группировка Документ;
                   |Группировка ТМЦ;
                   |Условие (ТМЦ в выбТМЦ);";
155 Ёпрст
 
21.12.12
17:16
(153) дык спрои у мужика в кепке в пофигураторе, про параметры в применяемых тобой методов, например, в

ИспользоватьВладельца
156 Ёпрст
 
21.12.12
17:17
+ НайтиПоНаименованию,  и если че, она возвращает результат, найден, али нет..
157 bananan
 
21.12.12
17:19
(156) Возвращает 0
158 bananan
 
21.12.12
17:19
т.е. не найден
159 Stella0608
 
21.12.12
17:23
(149) Конфы нет под рукой чтобы проверить.
Есть версия, что нужно "НайтиПоРеквизиту()".
А "ВыбратьЭлементы" зачем?
160 Ёпрст
 
21.12.12
17:24
(157) см (155)
161 Stella0608
 
21.12.12
17:25
ЕдИ.ИспользоватьВладельца() - в качестве параметра совать элемент справочника номенклатура.
А реквизита БазоваяЕдиница или т.п. в товарах нет?
162 bananan
 
21.12.12
17:27
(161) есть такое реквезит но он в данном случае НЕ нужен мне надо для данного товара узнать коэффициент для еденицы измерения ящ.
Сепйчас такой код:
ЕдИ = Создатьобъект("Справочник.ЕдИзм");
   ТМЦ = Создатьобъект("Справочник.ТМЦ");
   Найд=ТМЦ.НайтиПоНаименованию("товар кг", 1);
   ТМЦ.ВыбратьЭлементы();
   ЕдИ.ИспользоватьВладельца(ТМЦ);
   Найд2=ЕдИ.НайтиПоНаименованию("бл.", 1);
   Сообщить("ТМЦ="+Найд+" "+Найд2);
Выдает:
ТМЦ=0 0
163 Mikeware
 
21.12.12
17:29
:-))
164 bananan
 
21.12.12
17:29
т.е. выходит она зараза и ТМЦ "товар кг" не находит. а такое ТМЦ есть!
165 Stella0608
 
21.12.12
17:30
У вас в конфе есть товар с наименованием "товар кг"? :)))
166 Mikeware
 
21.12.12
17:30
что-то это напоминает известную задачку про обезъян за пишущей машинкой...
167 bananan
 
21.12.12
17:31
(165) Есть такой товр, когда задал тМЦ найти по коду ТМЦ он нашел
168 Stella0608
 
21.12.12
17:32
(166) Да ладно, забавно :).
Найд=ТМЦ.НайтиПоНаименованию("товар кг", 1);
единица зачем?
169 Stella0608
 
21.12.12
17:32
(167) Попробуй с ноликом поискать :).
Либо таки неправильно указано наименование.
170 bananan
 
21.12.12
17:33
т.е. по колдду ТМЦ нашел (по наименованию не хочет... явно какай то ощибка в наименовании) по коду тмц находит, а подчинеый этому ТМЦ ЕдИзм не находит
171 Ёпрст
 
21.12.12
17:33
Да не сцы, к новому году найдется всё..
172 Mikeware
 
21.12.12
17:34
(171) а что, у них конца света не будет, чтоль?
173 Ёпрст
 
21.12.12
17:34
и если че, в ИспользоватьВладельца у тебя опять лажа, даже если ТМЦ и найден будет.
174 Stella0608
 
21.12.12
17:34
Попробуй ТМЦ.НайтиПоНаименованию("товар кг", 0);
Если возвращает 0 - стопудово нет ТМЦ с таким наименованием :).
175 Ёпрст
 
21.12.12
17:35
(172) не, у них ребрендеринг, заменят наименование на АД и всё..
176 Mikeware
 
21.12.12
17:35
(173) и перед Использовать владельца - тоже лажа...
177 bananan
 
21.12.12
17:36
(171) Наименование ТМЦ скопировал - все-равно не нходит1, Наименование ТМЦ скопировал из справочника!
178 Stella0608
 
21.12.12
17:36
(173) Пущай найдет вначале.
(162)
ВыбратьЭлементы - убрать нафиг.
ЕдИ.ИспользоватьВладельца(ТМЦ); - точный синтаксис не помню, возможно нужно ТМЦ.ТекущийЭлемент().
179 bananan
 
21.12.12
17:38
ЕдИ.ИспользоватьВладельца(ТМЦ.ТекущийЭлемент);
выдает:
Поле агрегатного объекта не обнаружено (ТекущийЭлемент)
180 Stella0608
 
21.12.12
17:38
(177) С ноликом находит? Частенько по коду ищет, а по наименованию приходится принудительно нолик указывать, ну или родителя явно указывать.
181 Stella0608
 
21.12.12
17:38
(179) Скобки в конце забыл :). Это функция.
182 bananan
 
21.12.12
17:39
(180) А как родителя явно указать?
183 bananan
 
21.12.12
17:40
(181) ДА! Поставилскобки - работает нормально
184 Stella0608
 
21.12.12
17:40
(182) Если знаешь в какой папке находится товар, то ТМЦ.ИспользоватьРодителя(Родитель).
Но Родитель должен быть типа Справочник.ТМЦ и его тоже нужно вначале найти :))).
185 Stella0608
 
21.12.12
17:40
(184) Нашел единицу измерения? :)
186 Stella0608
 
21.12.12
17:42
Короче забей и ищи по коду :).
С ноликом должен найти, исключение - несколько товаров с одинаковым наименованием.
187 bananan
 
21.12.12
17:46
(182) В какой папке - не знаю
188 Stella0608
 
21.12.12
17:47
(187) Тогда точно забей на родителя и ищи по коду. Долго объяснять.
Кстати, с ноликом ищет по наименованию? Мне просто интересно :).
189 bananan
 
21.12.12
17:47
по коду ищет задал
Найд=ТМЦ.НайтиПоНаименованию("товар кг", 0);
тоже ищет - все нормально!
Всем - спасибо
190 Stella0608
 
21.12.12
17:48
Кстати, а нафига искать по наименованию, если ты запросом данные получаешь?
191 bananan
 
21.12.12
17:56
(190) не знаю как начал искать - так и ищу :)
192 Stella0608
 
21.12.12
18:06
А код откуда?
193 bananan
 
21.12.12
18:19
код , в данном слдучае я сам посмотрел в справочнике
194 bananan
 
21.12.12
18:45
Опять неонятка какая-то (там в коде есть служебные ссообщить):
ЕдИ = Создатьобъект("Справочник.ЕдИзм");
   ТМЦ = Создатьобъект("Справочник.ТМЦ");
   Тов = Запр.ТМЦ;
   Сообщить("Тов="+Тов);
   Найд=ТМЦ.НайтиПоНаименованию(Тов, 0);
   Сообщить(Найд+" Товар="+Тов);
выдает:
0
Тов=товар ящ
0
Тов=товар шт
0
Тов=товар ящ
0
Тов=товар кг
0
Тов=товар шт
0
Тов=товар шт
0
Тов=товар кг
0
Тов=товар ящ
0
Тов=товар ящ
0
195 bananan
 
21.12.12
18:45
Как такое может быть?
196 bananan
 
21.12.12
18:45
и в чем здесь глюк?
197 bananan
 
21.12.12
18:51
а если в запросе пытаюсь определить код ТМЦ
(|Кд = Документ.РасходнаяНакладная.Код, Документ.РасходнаяНакладнаяН.Код;) - выдает:
Если Запр.Выполнить(ТекстЗапроса)=0 Тогда
{\\SERVER12\VPKTEST$\EXTFORMS\РАС.ERT(93)}: Кд = Документ.РасходнаяНакладная. <<?>> Код, Документ.РасходнаяНакладнаяН.Код;
Запрос[4] : Неверно заданный путь 'Код'
Если Запр.Выполнить(ТекстЗапроса)=0 Тогда
{\\SERVER12\VPKTEST$\EXTFORMS\РАС.ERT(93)}: Кд = Документ.РасходнаяНакладная.Код, Документ.РасходнаяНакладнаяН. <<?>> Код;
Запрос[4] : Неверно заданный путь 'Код'
Если Запр.Выполнить(ТекстЗапроса)=0 Тогда
{\\SERVER12\VPKTEST$\EXTFORMS\РАС.ERT(93)}: Условие (ТМЦ в выбТМЦ <<?>> );
Запрос[9] : Ошибка в условии
198 bananan
 
21.12.12
18:52
Что за фигня? Вроде все правильно пишщу.... или я где-то не так что делаю?
199 bananan
 
21.12.12
19:11
ЛЮДИ!!! Подскажите, я уже почти сошел с ума!!!
200 Ёпрст
 
21.12.12
19:21
зачем искать найденную сылку по представлению справочника ?
Не, тут не лечат
201 Andreyyy
 
21.12.12
19:38
(0) Читай справку в синтаксис-помощнике, нахрапом не осилишь. Сам время убьешь и людей замучаешь насмерть)
202 Ivаnоv4
 
21.12.12
20:23
для просмотра накладных - 3и страницы это много
203 Ivаnоv4
 
21.12.12
21:12
походу в 2-х ветках

Непонятка с запросом...

Всех отвечающих с чем-то имеют


С Новым по майскому календарю)
204 Mikeware
 
21.12.12
21:17
(203) Если учесть, что вопрос пор подчиненные справочники он задавал еще в 2008 году, а про запрос по документам - в 2008, 2009 и 2011, то либо это суперталантливый тролль, либо супертупой гиперидиот
205 Ivаnоv4
 
21.12.12
21:27
(204) так далеко в сучность я не залезал
я вижу 2-е ветки, где явно троллят
) привет модераторам и волшебнику)
206 Stella0608
 
24.12.12
09:37
(194) Поиск в цикле.
(197) Не код, а НомерДок. Код - у справочника.