Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 07:25

Ведомость Товары На Складах, Добавить Цену

Автор AlenkaInt, 29 авг 2012, 01:37

0 Пользователей и 1 гость просматривают эту тему.

MuI_I_Ika

Процедура УстановитьНачальныеНастройкиПоМетаданнымРегистра(ИмяРегистра)
Это я так понимаю в универсальном отчете.
Точку останова ставить в самом конце, где текст ПостроительОтчета.Текст = ТекстЗапроса;

Там как раз можно узнать чему равен текст запроса.

AlenkaInt

Большое спасибо MuI_I_Ika! Я воспользовалась вашим советом и узнала что за запрос. А как в него добавить поле цена ведь я его вижу в табло, если я там исправлю, то текст в универсальном отчете тоже исправится?


MuI_I_Ika

Скопируйте текст в табло и выложите на форуме. Мы поможем скорректировать запрос и укажем место куда вставить.

AlenkaInt

Сразу приношу извинения. Он очень большой.
ВЫБРАТЬ РАЗРЕШЕННЫЕ
   ИсточникДанных.Склад КАК Склад,
   ПРЕДСТАВЛЕНИЕ(ИсточникДанных.Склад) КАК СкладПредставление,
   ИсточникДанных.Номенклатура КАК Номенклатура,
   ПРЕДСТАВЛЕНИЕ(ИсточникДанных.Номенклатура) КАК НоменклатураПредставление,
   ИсточникДанных.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
   ПРЕДСТАВЛЕНИЕ(ИсточникДанных.ХарактеристикаНоменклатуры) КАК ХарактеристикаНоменклатурыПредставление,
   ИсточникДанных.СерияНоменклатуры КАК СерияНоменклатуры,
   ПРЕДСТАВЛЕНИЕ(ИсточникДанных.СерияНоменклатуры) КАК СерияНоменклатурыПредставление,
   ИсточникДанных.Качество КАК Качество,
   ПРЕДСТАВЛЕНИЕ(ИсточникДанных.Качество) КАК КачествоПредставление,
   ИсточникДанных.Номенклатура.БазоваяЕдиницаИзмерения КАК БазоваяЕдиницаИзмерения,
   ПРЕДСТАВЛЕНИЕ(ИсточникДанных.Номенклатура.БазоваяЕдиницаИзмерения) КАК БазоваяЕдиницаИзмеренияПредставление,
   ИсточникДанных.КоличествоНачальныйОстаток КАК КоличествоНачальныйОстаток,
   ИсточникДанных.КоличествоПриход КАК КоличествоПриход,
   ИсточникДанных.КоличествоРасход КАК КоличествоРасход,
   ИсточникДанных.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстаток,
   ИсточникДанных.КоличествоОборот КАК КоличествоОборот,
   ИсточникДанных.КоличествоНачальныйОстаток * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоЕдиницОтчетовНачальныйОстаток,
   ИсточникДанных.КоличествоПриход * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоЕдиницОтчетовПриход,
   ИсточникДанных.КоличествоРасход * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоЕдиницОтчетовРасход,
   ИсточникДанных.КоличествоКонечныйОстаток  * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоЕдиницОтчетовКонечныйОстаток,
   ИсточникДанных.КоличествоОборот * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоЕдиницОтчетовОборот,
   ИсточникДанных.КоличествоНачальныйОстаток * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоБазовыхЕдНачальныйОстаток,
   ИсточникДанных.КоличествоПриход * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоБазовыхЕдПриход,
   ИсточникДанных.КоличествоРасход * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоБазовыхЕдРасход,
   ИсточникДанных.КоличествоКонечныйОстаток  * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоБазовыхЕдКонечныйОстаток,
   ИсточникДанных.КоличествоОборот * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоБазовыхЕдОборот,
   ИсточникДанных.Регистратор КАК Регистратор,
   ПРЕДСТАВЛЕНИЕ(ИсточникДанных.Регистратор) КАК РегистраторПредставление,
   ИсточникДанных.Период КАК Период,
   НачалоПериода(ИсточникДанных.Период, День) КАК ПериодДень,
   НачалоПериода(ИсточникДанных.Период, Неделя) КАК ПериодНеделя,
   НачалоПериода(ИсточникДанных.Период, Декада) КАК ПериодДекада,
   НачалоПериода(ИсточникДанных.Период, Месяц) КАК ПериодМесяц,
   НачалоПериода(ИсточникДанных.Период, Квартал) КАК ПериодКвартал,
   НачалоПериода(ИсточникДанных.Период, Полугодие) КАК ПериодПолугодие,
   НачалоПериода(ИсточникДанных.Период, Год) КАК ПериодГод
   //ПОЛЯ_СВОЙСТВА
   //ПОЛЯ_КАТЕГОРИИ
{ВЫБРАТЬ
   Склад.*,
   Номенклатура.*,
   ХарактеристикаНоменклатуры.*,
   СерияНоменклатуры.*,
   Качество.*,
   БазоваяЕдиницаИзмерения.*,
   КоличествоНачальныйОстаток,
   КоличествоПриход,
   КоличествоРасход,
   КоличествоКонечныйОстаток,
   КоличествоОборот,
   КоличествоЕдиницОтчетовНачальныйОстаток,
   КоличествоЕдиницОтчетовПриход,
   КоличествоЕдиницОтчетовРасход,
   КоличествоЕдиницОтчетовКонечныйОстаток,
   КоличествоЕдиницОтчетовОборот,
   КоличествоБазовыхЕдНачальныйОстаток,
   КоличествоБазовыхЕдПриход,
   КоличествоБазовыхЕдРасход,
   КоличествоБазовыхЕдКонечныйОстаток,
   КоличествоБазовыхЕдОборот,
   Регистратор.* КАК Регистратор,
   Период КАК Период,
   ПериодДень,
   ПериодНеделя,
   ПериодДекада,
   ПериодМесяц,
   ПериодКвартал,
   ПериодПолугодие,
   ПериодГод
   //ПСЕВДОНИМЫ_СВОЙСТВА
   //ПСЕВДОНИМЫ_КАТЕГОРИИ
}
ИЗ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&ДатаНач, &ДатаКон, Регистратор {&Периодичность},, {
   Склад.* КАК Склад,
   Номенклатура.* КАК Номенклатура,
   ХарактеристикаНоменклатуры.* КАК ХарактеристикаНоменклатуры,
   СерияНоменклатуры.* КАК СерияНоменклатуры,
   Качество.* КАК Качество,
   (Номенклатура.БазоваяЕдиницаИзмерения).* КАК БазоваяЕдиницаИзмерения}) КАК ИсточникДанных
//СОЕДИНЕНИЯ
{ГДЕ
   ИсточникДанных.КоличествоНачальныйОстаток КАК КоличествоНачальныйОстаток,
   ИсточникДанных.КоличествоПриход КАК КоличествоПриход,
   ИсточникДанных.КоличествоРасход КАК КоличествоРасход,
   ИсточникДанных.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстаток,
   ИсточникДанных.КоличествоОборот КАК КоличествоОборот,
   ИсточникДанных.КоличествоНачальныйОстаток * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоЕдиницОтчетовНачальныйОстаток,
   ИсточникДанных.КоличествоПриход * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоЕдиницОтчетовПриход,
   ИсточникДанных.КоличествоРасход * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоЕдиницОтчетовРасход,
   ИсточникДанных.КоличествоКонечныйОстаток  * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоЕдиницОтчетовКонечныйОстаток,
   ИсточникДанных.КоличествоОборот * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоЕдиницОтчетовОборот,
   ИсточникДанных.КоличествоНачальныйОстаток * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоБазовыхЕдНачальныйОстаток,
   ИсточникДанных.КоличествоПриход * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоБазовыхЕдПриход,
   ИсточникДанных.КоличествоРасход * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоБазовыхЕдРасход,
   ИсточникДанных.КоличествоКонечныйОстаток  * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоБазовыхЕдКонечныйОстаток,
   ИсточникДанных.КоличествоОборот * ИсточникДанных.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоБазовыхЕдОборот,
   ИсточникДанных.Регистратор.* КАК Регистратор,
   ИсточникДанных.Период КАК Период,
   НачалоПериода(ИсточникДанных.Период, День) КАК ПериодДень,
   НачалоПериода(ИсточникДанных.Период, Неделя) КАК ПериодНеделя,
   НачалоПериода(ИсточникДанных.Период, Декада) КАК ПериодДекада,
   НачалоПериода(ИсточникДанных.Период, Месяц) КАК ПериодМесяц,
   НачалоПериода(ИсточникДанных.Период, Квартал) КАК ПериодКвартал,
   НачалоПериода(ИсточникДанных.Период, Полугодие) КАК ПериодПолугодие,
   НачалоПериода(ИсточникДанных.Период, Год) КАК ПериодГод
   //УСЛОВИЯ_СВОЙСТВА
   //УСЛОВИЯ_КАТЕГОРИИ
}
{УПОРЯДОЧИТЬ ПО
   Склад.*,
   Номенклатура.*,
   ХарактеристикаНоменклатуры.*,
   СерияНоменклатуры.*,
   Качество.*,
   БазоваяЕдиницаИзмерения.*,
   КоличествоНачальныйОстаток,
   КоличествоПриход,
   КоличествоРасход,
   КоличествоКонечныйОстаток,
   КоличествоОборот,
   КоличествоЕдиницОтчетовНачальныйОстаток,
   КоличествоЕдиницОтчетовПриход,
   КоличествоЕдиницОтчетовРасход,
   КоличествоЕдиницОтчетовКонечныйОстаток,
   КоличествоЕдиницОтчетовОборот,
   КоличествоБазовыхЕдНачальныйОстаток,
   КоличествоБазовыхЕдПриход,
   КоличествоБазовыхЕдРасход,
   КоличествоБазовыхЕдКонечныйОстаток,
   КоличествоБазовыхЕдОборот,
   Регистратор.*,
   Период,
   ПериодДень,
   ПериодНеделя,
   ПериодДекада,
   ПериодМесяц,
   ПериодКвартал,
   ПериодПолугодие,
   ПериодГод
   //ПСЕВДОНИМЫ_СВОЙСТВА
   //ПСЕВДОНИМЫ_КАТЕГОРИИ
}
ИТОГИ
   СУММА(КоличествоНачальныйОстаток),
   СУММА(КоличествоПриход),
   СУММА(КоличествоРасход),
   СУММА(КоличествоКонечныйОстаток),
   СУММА(КоличествоОборот),
   СУММА(КоличествоЕдиницОтчетовНачальныйОстаток),
   СУММА(КоличествоЕдиницОтчетовПриход),
   СУММА(КоличествоЕдиницОтчетовРасход),
   СУММА(КоличествоЕдиницОтчетовКонечныйОстаток),
   СУММА(КоличествоЕдиницОтчетовОборот),
   СУММА(КоличествоБазовыхЕдНачальныйОстаток),
   СУММА(КоличествоБазовыхЕдПриход),
   СУММА(КоличествоБазовыхЕдРасход),
   СУММА(КоличествоБазовыхЕдКонечныйОстаток),
   СУММА(КоличествоБазовыхЕдОборот)
   //ИТОГИ_СВОЙСТВА
   //ИТОГИ_КАТЕГОРИИ
ПО
   ОБЩИЕ
{ИТОГИ ПО
   Склад.*,
   Номенклатура.*,
   ХарактеристикаНоменклатуры.*,
   СерияНоменклатуры.*,
   Качество.*,
   БазоваяЕдиницаИзмерения.*,
   Регистратор.*,
   Период,
   ПериодДень,
   ПериодНеделя,
   ПериодДекада,
   ПериодМесяц,
   ПериодКвартал,
   ПериодПолугодие,
   ПериодГод
   //ПСЕВДОНИМЫ_СВОЙСТВА
   //ПСЕВДОНИМЫ_КАТЕГОРИИ
}

MuI_I_Ika

Ну соответственно добавляем левое соединение в запрос:

ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &НужныйТипЦен) КАК ЦеныНоменклатурыСрезПоследних
      ПО ИсточникДанных.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
         И ИсточникДанных.ХарактеристикаНоменклатуры = ЦеныНоменклатурыСрезПоследних.ХарактеристикаНоменклатуры

Добавляем нужное поле Цена. Не забываем ее добавить в настройки построителя на закладке конструктора запроса Построитель.  И окончательный запрос будет готов.

Потом в своем отчете в процедуру УстановкаНачальныхНастроек где нибудь вместо имени регистра пишем следующий код:

ТекстЗапроса = "Сюда написать текст запроса";

// Инициализация текста запроса построителя отчета
УниверсальныйОтчет.ПостроительОтчета.Текст = ТекстЗапроса;

И в принципе все должно заработать.
Если не получится, вложите файлом получившийся отчет, чтобы можно было посмотреть что получилось.

AlenkaInt

Потом в своем отчете в процедуру УстановкаНачальныхНастроек где нибудь вместо имени регистра пишем...
Это вы имеете в ввиду в универсальном отчете? Там есть процедура Процедура УстановитьНачальныеНастройкиПоМетаданнымРегистра(ИмяРегистра)

MuI_I_Ika

Нет я имею ввиду именно конечный отчет. Мы же меняем именно его. Если мы поменяем эту процедуру в универсальном отчете, изменятся все отчеты в конфигурации. Я так понимаю такой задачи у нас не стоит.

IoannVic

Если вопрос еще актуален, могу предложить отчет стоимостная оценка склада в ценах номенклатуры, строится аналогично через универсальный отчет.

AlenkaInt

А что значит предложить? Мне разобраться надо, если вы поможете мне с этим я буду только за.

AlenkaInt

Делаю по пунктам.
1.) Добавляем левое соединение в запрос:
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &НужныйТипЦен) КАК ЦеныНоменклатурыСрезПоследних
      ПО ИсточникДанных.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
         И ИсточникДанных.ХарактеристикаНоменклатуры = ЦеныНоменклатурыСрезПоследних.ХарактеристикаНоменклатуры
Сделала.
2.)Добавляем нужное поле Цена. Это тоже самое что п.1? Или надо еще где то добавить?
3.)Не забываем ее добавить в настройки построителя на закладке конструктора запроса Построитель. 
У меня автоматически на закладке Построитель появилась еще запись ЦеныНоменклатурыСрезПоследних. Этого достаточно или еще что то надо сделать?
4.)Потом в своем отчете в процедуру УстановкаНачальныхНастроек где нибудь вместо имени регистра пишем следующий код:

ТекстЗапроса = "Сюда написать текст запроса";

// Инициализация текста запроса построителя отчета
УниверсальныйОтчет.ПостроительОтчета.Текст = ТекстЗапроса;
Я нашла в процедуре УстановитьНачальныеНастройки(ДополнительныеПараметры = Неопределено) Экспорт в отчете ВедомостьТоварыНаСкладах такие строки:
УниверсальныйОтчет.мВыбиратьИмяРегистра = Ложь;   
   // Содержит имя регистра, по метаданным которого будет выполняться заполнение настроек отчета.
   // Тип: Строка.
   // Пример:
   // УниверсальныйОтчет.ИмяРегистра = "ТоварыНаСкладах";
   УниверсальныйОтчет.ИмяРегистра = "ТоварыНаСкладах";
Можно в этом месте вместо имени регистра вставить текст запроса?

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск