7.7 ТиС для Украины Как сделать запрос?
25.06.2009
15:23
#11
Поле агрегатного объекта не обнаружено (ФИО)
забыл добавить, этот реквизит периодический
забыл добавить, этот реквизит периодический
25.06.2009
15:36
#12
пока переделал в непериодический, все работает
раз уж текст процедуры в этой теме помогите мне еще реализовать такую штуку
что бы при печати документа в форму сразу выдодился ФИО МОЛ
а ниже все товары пренадлежащие этому МОЛ
раз уж текст процедуры в этой теме помогите мне еще реализовать такую штуку
что бы при печати документа в форму сразу выдодился ФИО МОЛ
а ниже все товары пренадлежащие этому МОЛ
25.06.2009
16:34
#13
"Для вывода периодического реквизита добавляй строку перед "Таб.ВывестиСекцию("Строка");"
Товар.ИспользоватьДату(ДатаДок);
Для вывода товаров из документа с группировкой по МОЛ нужно:
1) Добавить в таблицу секцию "МОЛ" с единственной колонкой (тип = "Выражение", выражение = "ФИО")
2) ПЕределать вывод строк в печатную форму."
Товар.ИспользоватьДату(ДатаДок);
Для вывода товаров из документа с группировкой по МОЛ нужно:
1) Добавить в таблицу секцию "МОЛ" с единственной колонкой (тип = "Выражение", выражение = "ФИО")
2) ПЕределать вывод строк в печатную форму."
25.06.2009
16:51
#14
"Меняешь кусок кода от
ВыбратьСтроки()
по
КонецЦикла;
на
ТекстЗапроса = "//{{ЗАПРОС(Сформировать)
|МОЛ = Документ.Счёт.Номенклатура.МОЛ;
|Товар = Документ.Счёт.Номенклатура;
|Количество = Документ.Счёт.Количество;
|Сумма = Документ.Счёт.Сумма;
|ТекущийДокумент = Документ.Счёт.ТекущийДокумент;
|Группировка МОЛ;
|Группировка Товар без групп;
|Условие(ТекущийДокумент = ТекДок);
|"//}}ЗАПРОС
;
Запрос = СоздатьОбъект("Запрос");
ТекДок = ТекущийДокумент();
Запрос.Выполнить(ТекстЗапроса);
Пока Запрос.Группировка("МОЛ") = 1 Цикл
ФИО = Запрос.МОЛ.ФИО;
Таб.ВывестиСекцию("МОЛ");
Пока Запрос.Группировка("Товар") = 1 Цикл
Товар = Запрос.Товар;
ИмяФайла=(Товар.Код);
ИмяКаталога = ("E:\1с\Склад\foto\small\");
Если ФС.СуществуетФайл(ИмяКаталога + ИмяФайла + ".jpg")=0 Тогда
Фото="""";
Иначе;
Фото="+";
КонецЕсли;
// в этом месте нужно посмотреть какие параметры берутся из шапки документа, а какие из табличной части
// из табличной части - Запрос.<имя реквизита> (предварительно описав эти параметры в запросе, как "Количество" и "Сумма" в примере), из шапки - оставляешь как есть
ПечЦена = глФРМ(глПересчет(ЦенаБезНДС,Валюта,Курс,ВП,ДатаДок),ВП,0);
ПечСумма = глФРМ(глПересчет(СуммаБезНДС,Валюта,Курс,ВП,ДатаДок),ВП,0);
// реквизиты для вывода в строку по товару
Количество = Запрос.Количество;
Сумма = Запрос.Сумма;
Таб.ВывестиСекцию("Строка");
Ном = Ном+1;
КонецЦикла;
КонецЦикла;"
ВыбратьСтроки()
по
КонецЦикла;
на
ТекстЗапроса = "//{{ЗАПРОС(Сформировать)
|МОЛ = Документ.Счёт.Номенклатура.МОЛ;
|Товар = Документ.Счёт.Номенклатура;
|Количество = Документ.Счёт.Количество;
|Сумма = Документ.Счёт.Сумма;
|ТекущийДокумент = Документ.Счёт.ТекущийДокумент;
|Группировка МОЛ;
|Группировка Товар без групп;
|Условие(ТекущийДокумент = ТекДок);
|"//}}ЗАПРОС
;
Запрос = СоздатьОбъект("Запрос");
ТекДок = ТекущийДокумент();
Запрос.Выполнить(ТекстЗапроса);
Пока Запрос.Группировка("МОЛ") = 1 Цикл
ФИО = Запрос.МОЛ.ФИО;
Таб.ВывестиСекцию("МОЛ");
Пока Запрос.Группировка("Товар") = 1 Цикл
Товар = Запрос.Товар;
ИмяФайла=(Товар.Код);
ИмяКаталога = ("E:\1с\Склад\foto\small\");
Если ФС.СуществуетФайл(ИмяКаталога + ИмяФайла + ".jpg")=0 Тогда
Фото="""";
Иначе;
Фото="+";
КонецЕсли;
// в этом месте нужно посмотреть какие параметры берутся из шапки документа, а какие из табличной части
// из табличной части - Запрос.<имя реквизита> (предварительно описав эти параметры в запросе, как "Количество" и "Сумма" в примере), из шапки - оставляешь как есть
ПечЦена = глФРМ(глПересчет(ЦенаБезНДС,Валюта,Курс,ВП,ДатаДок),ВП,0);
ПечСумма = глФРМ(глПересчет(СуммаБезНДС,Валюта,Курс,ВП,ДатаДок),ВП,0);
// реквизиты для вывода в строку по товару
Количество = Запрос.Количество;
Сумма = Запрос.Сумма;
Таб.ВывестиСекцию("Строка");
Ном = Ном+1;
КонецЦикла;
КонецЦикла;"
25.06.2009
17:14
#15
чета он мне выкинул стока разной ерунды, я ее сюда писать не стал, там где то половина запроса неправильная
25.06.2009
17:18
#16
а можно например товары записать в таблицу значений, там их отсортировать а потом загрузить в печатную форму?
25.06.2009
17:43
#17
Запрос дан как пример, естественно нужно по вашей базе свой сформировать. ТЗ не подойдет, т.к. Вы хотели товары распределить по МОЛ, а в 7.7 группировку можно делать либо через запрос либо через Ж... Если Вы не умеете конструировать запросы на 7.7, то беда, т.к. не имея вашей базы точный запрос не составишь.
Читают тему
(гостей: 1)