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

Регистр Бухгалтерии

Автор MagistrPavel, 01 июл 2015, 11:32

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

MagistrPavel

Подскажите как получить список счетов и документов по этим счетам, обращаться к регистру бухгалтерии?
Пример вывода:

10
поступление 12-3493 от 13.12.12
реализация 3478574387 от 5.12.12
20
26
41
реализация 212344 от 6.04.15

...

Rasty

запросом по регистру бухгалтерии, с параметрами счетдт и счеткт
Помогли - Скажи спасибо! Решил сам - поделись решением!
:)

MagistrPavel

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

Rasty

Помогли - Скажи спасибо! Решил сам - поделись решением!
:)

MagistrPavel

Ну как бы запрос не получается выдает кучу ошибок, как будто не видит параметры счетДт и счетКт

Rasty

Помогли - Скажи спасибо! Решил сам - поделись решением!
:)

MagistrPavel

Обработка выводит все документы по регистрам в данном случае регистру бухгалтерии, мне необходимо чтобы она выводила по номерам счетов документы.

&НаСервере
Процедура ВыполнитьНаСервере()
   Если Не ЗначениеЗаполнено(ДатаНачало) Тогда
   Сообщить("Дата Начало не заполнена!");      
   Возврат;
Конецесли;
Если Не ЗначениеЗаполнено(ДатаКонец) Тогда
   Сообщить("Дата Конец не заполнена!");      
   Возврат;
Конецесли;
//ТЗ = Новый ТаблицаЗначений;
//ТЗ.Колонки.Добавить("Регистр",,"Наименование Регистра");
//ТЗ.Колонки.Добавить("Регистратор",,"Наименование Документа");
//ТЗ.Колонки.Добавить("Количество",,"Количество документов");

Для каждого Регистр Из Метаданные.РегистрыБухгалтерии Цикл
   Колво=0;
   Настоящий="";
   НастоящийСиноним="";
   НоваяСтрока = ТабличноеПоле1.Добавить();
    НоваяСтрока.Регистр = Регистр.Имя;
   Запрос = Новый Запрос;
   Запрос.УстановитьПараметр("ДатаНачало", ДатаНачало);
    Запрос.УстановитьПараметр("ДатаКонец", ДатаКонец);
   Запрос.Текст = "ВЫБРАТЬ
   |   ТоварыНаСкладах.Регистратор
   |ИЗ
   |   РегистрБухгалтерии.ТоварыНаСкладах КАК ТоварыНаСкладах
   |ГДЕ
    |ТоварыНаСкладах.Регистратор.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&ДатаНачало, ДЕНЬ) И КОНЕЦПЕРИОДА(&ДатаКонец, ДЕНЬ)
   |СГРУППИРОВАТЬ ПО
    |ТоварыНаСкладах.Регистратор
   |УПОРЯДОЧИТЬ ПО
    |ТоварыНаСкладах.Регистратор";
   Запрос.Текст = СтрЗаменить(Запрос.Текст, "ТоварыНаСкладах", Регистр.Имя);
   Результат = Запрос.Выполнить();
   Выборка = Результат.Выбрать();
   
   Пока Выборка.Следующий() Цикл
      Колво=Колво+1;
      Если Колво > 1 Тогда
         Если НЕ Настоящий = Выборка.Регистратор.Метаданные().Имя Тогда
            НоваяСтрока = ТабличноеПоле1.Добавить();
            НоваяСтрока.Регистратор =Символы.Таб + Настоящий;
            НоваяСтрока.СинонимРегистратора =Символы.Таб + НастоящийСиноним;
            НоваяСтрока.Количество =Колво-1;
            Колво=1;
         КонецЕсли;
      КонецЕсли;   
      Настоящий=Выборка.Регистратор.Метаданные().Имя;
      НастоящийСиноним=Выборка.Регистратор.Метаданные().Синоним;
   КонецЦикла;
   Если НЕ Колво=0 Тогда
      НоваяСтрока = ТабличноеПоле1.Добавить();
      НоваяСтрока.Регистратор =Символы.Таб + Настоящий;
      НоваяСтрока.СинонимРегистратора =Символы.Таб + НастоящийСиноним;
      НоваяСтрока.Количество =Колво;
   КонецЕсли;
КонецЦикла;

КонецПроцедуры

&НаКлиенте
Процедура ВыполнитьКоманду(Команда)
   ВыполнитьНаСервере();
КонецПроцедуры

P.S. буквально вчера вывел им регистры накопления

Rasty

а по какому именно счету ДТ или КТ?
Помогли - Скажи спасибо! Решил сам - поделись решением!
:)

MagistrPavel

Достаточно по счетДТ потом сам разберусь мне главное понять что изменить

Rasty


Запрос.Текст = 
"ВЫБРАТЬ
| Хозрасчетный.Регистратор,
| Хозрасчетный.СчетДт
|ИЗ
| РегистрБухгалтерии.Хозрасчетный КАК Хозрасчетный"
Таблица = Запрос.Выполнить().Выгрузить();
Таблица.Сортировать("СчетДт Возр");

В итоге будет таблица с колонками СчетДТ и Регистратор сортированная по счету дебита
Помогли - Скажи спасибо! Решил сам - поделись решением!
:)

Теги:

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

Рейтинг@Mail.ru

Поиск