Имя: Пароль:
1C
 
Как вытащить реквизит справочника из значения субконто в бухзапросе?
0 zx
 
24.09.04
13:51
би.ИспользоватьСубконто(ВидыСубконто.МестаХранения, ,1);

мне нужно для соответствующего справочника узнать один из реквизитов.
как это сделать, подскажите кто знает.
1 Лошадка в пальто
 
24.09.04
13:53
Сформулируйте вопрос, пожалуйста
2 Bekas
 
24.09.04
13:54
Как вытащить реквизит справочника из значения субконто в бухзапросе?
3 Лошадка в пальто
 
24.09.04
13:54
http://www.gazeta.ru/2004/09/23/kz_m134471.shtml
Может тут ответ?
4 F427
 
24.09.04
13:55
Нельзя объять необъятное... и того нельзя обнять, чего нет...
5 OFF
 
24.09.04
13:55
би.ИспользоватьСубконто(ВидыСубконто.МестаХранения, ,1);
би.ВыполнитьЗапрос();
бы.ВыбратьСубконто();
Пока би.ПолучитьСубконто() = 1 Цикл
МойРеквизит = би.Субконто().МойРеквизит;
6 @LoNg
 
24.09.04
13:55
позле ВыполнитьЗапроса и ВыбратьСубконто/ПолучитьСубконто
МХ = би.Субконто(ВидыСубконто.МестаХранения)
НужныйРеквизит = МХ.<ИмяРеквизита>
7 OFF
 
24.09.04
13:58
(6) Пришла собачка и все испортила :)
А так бы появился еще один вопрос, - "почему тормозит запрос"?
8 яч
 
24.09.04
14:52
А могу я сразу сделать запрос где в субконто передать нужное значение реквизита справочника?
9 @LoNg
 
24.09.04
14:53
8
Только если тебе не мешают религиозные или морально-этические запреты.
10 OFF
 
24.09.04
14:56
(9) LOL
11 zx
 
24.09.04
14:59
LoNg в данном случае моралью я готов принебречь, только скажи как мне правильно записать запрос.
12 AlexMan
 
24.09.04
15:01
(11) ИспользоватьСубконто();
13 Guk
 
24.09.04
15:10
Х#як= СоздатьОбъект("БухгалтерскиеИтоги");
       Х#як.ИспользоватьСубконто(ВидыСубконто.БанковскиеСчета, БанковскийСчет, 2);
       Если Валютный = 2 Тогда
           Х#як.ВыполнитьЗапрос(ДатаДок,, Сч52,, Валюта,,, "В");
           ОстатокНаНачалоДня = Х#як.СНД("В");
       Иначе
           Х#як.ВыполнитьЗапрос(ДатаДок,, Сч51,,,,, "С");
           ОстатокНаНачалоДня = Х#як.СНД("С");
       КонецЕсли;
       ОстатокНаКонецДня = ОстатокНаНачалоДня + Итог("Приход") - Итог("Расход");
14 zx
 
24.09.04
15:11
AlexMan - гениально. а конкретнее. я неделю только как взялся за 1с
15 Guk
 
24.09.04
15:19
(14) У тебя слишком медленный интернет, советую сменить провайдера...
16 zx
 
24.09.04
15:24
Guk легче работу поменять.
17 @LoNg
 
24.09.04
16:01
ИспользоватьСубконто(<ВидСубконто>, <Субконто>, <ТипФильтра>, <ПоГруппам>)
Англоязычный синоним:
UseSubconto
Параметры:
<ВидСубконто>
Значение типа «Вид Субконто» — расчет времен­ных итогов будет выполнен только для субконто указанного вида. Задается значением типа «Вид Субконто» или строкой содержащей имя иденти­фикатора вида субконто, как он назван в конфи­гураторе.
<Субконто>
Необязательный параметр. Здесь может быть за­дано или одно конкретное значение субконто, по которому будут отобраны итоги по аналитике или объект типа «Список значений», где можно задать несколько значений субконто. Если параметр не задан — то считается пустым значением субконто.
<ТипФильтра>
Необязательный параметр. Число — тип фильтра по субконто. Может принимать следующие значе­ния:
1 — разворачивать по данному субконто,
2 — отбирать по данному субконто,
3 — не учитывать это субконто вообще.
По умолчанию 1.
<ПоГруппам>
Необязательный параметр. Число — группировка др итогов по субконто. Параметр <ПоГруппам> имеет смысл, если параметр <ТипФильтра> равен 1, а вид субконто, заданный параметром <ВидСубконто>, имеет тип значения «Справочник». Параметр может принимать значения:
0 — не показывать итоги по группам справочника;
1 — показывать итоги по группам справочника.
По умолчанию 0.
-----------
би.ИспользоватьСубконто(ВидыСубконто.МестаХранения,НашеМестоХоронения ,2);
-----------
PS. http://airbase.ru/users/varban/rtfm/rtfm.htm
18 zx
 
24.09.04
16:07
Еще один дурной вопрос. Если в бухзапросе период с начГода по текДата, могу ли из этого же запроса получить итоги за месяц, кватал и.т.д?
19 @LoNg
 
24.09.04
16:11
18
только если не испытываешь к этому ничем не обусловленную и бессмысленную боязнь.
20 wolk
 
24.09.04
16:12
(18) - Если поставишь соответствующую периодичность. Подробнее - нажми Ctrl+F1
21 wolk
 
24.09.04
16:12
(19) - :-))))
22 zx
 
24.09.04
16:16
LoNg философией и психологией вечером займемся. тут я тебя проэкзаменую а если нада то и сеанс психотерапии проведу. лучше помоги с 1с.
23 wolk
 
24.09.04
16:17
(22) - а ответ в (20) чем-то не подходит?
24 AlexMan
 
24.09.04
16:19
(22) ВыполнитьЗапрос()-читай описалово к методу.
25 zx
 
24.09.04
16:20
брГод.ВыполнитьЗапрос(НачГода(ВыбДата), ВыбДата, СчетПоКоду("26"),СчетПоКоду("90"),,3,,5);

а теперь нада еще получить итоги за день, мес, квартал -  как это сделать одним бухзапросом?
26 @LoNg
 
24.09.04
16:20
в ВыполнитьЗапрос седьмой параметр - Периодичность.
1(«Период», «Period»)
Промежуточные итоги не рассчиты­ваются;
2(«Операция», «Entry»)
Промежуточные итоги рассчитыва­ются по операциям;
3(«Проводка», «Operation»)
По проводкам;
4(«День», «Day»)
По дням;
5(«Неделя», «Week»)
По неделям;
6(«Декада», «Decade»)
По декадам;
7(«Месяц», «Month»)
По месяцам;
8(«Квартал», «Quorter»)
По кварталам
9(«Год», «Year»)
По годам

Дальше - ВыбратьПериоды/ПолучитьПериод аналогично ВыбратьСубконто/ПолучитьСубконто

PS. Намекну еще раз. В ЖКК (Желто Красной книжке из коробки с одинэсом) это всё есть.
27 AlexMan
 
24.09.04
16:21
(25) 7 параметр метода ВыполнитьЗапрос().
28 @LoNg
 
24.09.04
16:23
25
одним запросом не получится. придется брать по дням и считать сабтоталы по месяцам и кварталам.
29 Guk
 
24.09.04
16:23
Х#як=СоздатьОбъект("БухгалтерскиеИтоги");
Х#як.ИспользоватьСубконто(ВидыСубконто.МестаХранения,НашеМестоХоронения ,2);
Х#як.ВыполнитьЗапрос(ДатаНачГода,ТекДата, Сч10,,,,"Месяц",5);
Х#як.ВыбратьПериоды();
Пока Х#як.ПолучитьПериод()=1 Цикл
.........
КонецЦикла;
30 zx
 
24.09.04
16:27
Ладно тогда как правильнее с точки зрения программирования сделать и скорости работы? так как Guk предложил, через периоды?
31 @LoNg
 
24.09.04
16:32
период - день.
результат в ТЗ.
в ТЗ дополнительные колонки для месяца и квартала.
после цикла ТЗ два раза выгрузить, одну свернуть по месяцам вторую по кварталам.
где-то так.
32 zx
 
24.09.04
16:41
LoNg идея кажется не плохая? а какой функцией получить номер квартала или месяца?
33 wolk
 
24.09.04
16:56
(32) - ДатаМесяц(). Не забудь посмотреть в Синтакс-помощнике. А номер квартала - в глобальный модуль кинь такую функцию:

// Возвращает значение квартала для даты
Функция НомерКвартала( ДляДаты ) Экспорт
   Возврат Цел( ( ДатаМесяц( ДляДаты ) - 1 )/3 ) + 1;
КонецФункции
34 zx
 
15.10.04
12:42
Ит = СоздатьОбъект("БухгалтерскиеИтоги");
Ит.ВключатьСубсчета(, 1);
Ит.ВыполнитьЗапрос(ВыбНачПериода, ВыбКонПериода, ,,, 3, "Операция", "С");
   Ит.ВыбратьПериоды();
       Пока Ит.ПолучитьПериод() = 1 Цикл
       ит.Операция.ВыбратьПроводки();
   //    Если ит.Операция.Документ.вид()="ПриходнаяНакладная" Тогда
           
           Пока  ит.Операция.ПолучитьПроводку() = 1 Цикл
               док=ит.Операция.Документ;
               Сум = ит.Операция.Сумма;
               деб = ит.Операция.Дебет.Счет;
           Таб.ВывестиСекцию("док");
               Сообщить(ит.Операция.ПредставлениеПроводки(2));
           КонецЦикла;

   //    КонецЕсли;
   КонецЦикла;
35 zx
 
15.10.04
12:44
Подскажите где, лажа. У меня получается бесконечный цикл.
Ит = СоздатьОбъект("БухгалтерскиеИтоги");
Ит.ВключатьСубсчета(, 1);
Ит.ВыполнитьЗапрос(ВыбНачПериода, ВыбКонПериода, ,,, 3, "Операция", "С");
   Ит.ВыбратьПериоды();
       Пока Ит.ПолучитьПериод() = 1 Цикл
       ит.Операция.ВыбратьПроводки();
   //    Если ит.Операция.Документ.вид()="ПриходнаяНакладная" Тогда
           
           Пока  ит.Операция.ПолучитьПроводку() = 1 Цикл
               док=ит.Операция.Документ;
               Сум = ит.Операция.Сумма;
               деб = ит.Операция.Дебет.Счет;
           Таб.ВывестиСекцию("док");
           КонецЦикла;

   //    КонецЕсли;
   КонецЦикла;