Имя: Пароль:
1C
1С v8
Заполнить МассивСчетов из Перечислений
0 maslevich
 
11.10.12
18:59
Здравствуйте!

Есть запрос, который получает остатки на счетах по валютам.
Сами счета определяются переменной МассивСчетов
В данную переменную получается добавлять счета только из ПлановСчетов.

Вопрос такой: возможно ли в неё добавить счета из Перечисления.ТипыСчетов.Наличность (к примеру)?
У меня не получилось. ))
1 Trier
 
11.10.12
19:07
Видимо имеется в виду отчет, и что в пользовательском режиме получается добавлять счета в отбор только из ПлановСчетов? если да, то поменять тип значения  у реквизита
2 maslevich
 
11.10.12
21:20
На самом деле не совсем уверен в том, что это отчёт.. )) Хотя возможно.. ))

Дело тут такое: я ковыряю конфу "Деньги"
При запуске её на рабочем столе показываются соответственно остатки денег в валютах. Но это не совсем удобно, поскольку остатки показывает в том числе и с кредитных счетов, которые фактически не являются твоими остатками, а являются заёмными деньгами. Вот, собственно эту функциональность я и пытаюсь добавить себе.

Собственно вот кусок кода, который за это отвечает:

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

   РезультатЗапроса = Запрос.Выполнить();

Вот и вопрос в том, чтобы этой командой: "МассивСчетов.Добавить ()" можно было добавить счета, определённые какими-то характеристиками (в данном случае - по типу счета), а не просто счета из планов счетов.. Вот..

вот и вопрос, возможно ли это?

Заранее прошу прощения, ибо бухгалтер из меня никудышный, да и программированием 1с занялся исключительно доделать конфу под себя.. )))
Независимо от того, куда вы едете — это в гору и против ветра!