Переключение на Главную Страницу Страницы: 1 ... 8 9 [10] 11 12 ... 17 ОтправитьПечать
Очень популярная тема (более 25 ответов) Прямые запросы к бухгалтерским итогам (число прочтений - 124023 )
idw
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 29
Зарегистрирован: 08. Июня 2007
Re: Прямые запросы к бухгалтерским итогам
Ответ #135 - 13. Июня 2007 :: 06:20
Печать  
Спасибо
  
Наверх
 
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #136 - 13. Июня 2007 :: 06:27
Печать  
berezdetsky писал(а) 11. Июня 2007 :: 07:56:
Задумывалось - так же, как и в стандартных ВТ 1С++.


А именно? Можно примерчик.
  
Наверх
 
IP записан
 
vlad-1c
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 10
Зарегистрирован: 09. Июля 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #137 - 13. Июня 2007 :: 07:14
Печать  
RuporAbsurda писал(а) 13. Июня 2007 :: 06:27:
berezdetsky писал(а) 11. Июня 2007 :: 07:56:
Задумывалось - так же, как и в стандартных ВТ 1С++.


А именно? Можно примерчик.

ARS = СоздатьОбъект("AccountsRecordSet");
ARS.УстановитьТекстовыйПараметр("ВыбДата", СформироватьПозициюДокумента(ВыбДоговорСтрахования,-1));
  
Наверх
 
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #138 - 13. Июня 2007 :: 08:49
Печать  
Не выходит:Syntax error converting datetime from character string

ар.УстановитьТекстовыйПараметр("ВыбДата", СформироватьПозициюДокумента(ТекущийДокумент(),-1));

...
|FROM $БИОстатки.Основной(:ВыбДата,,((Счет =:Счет) AND (Субконто1 IN (SELECT val FROM #kontr)) AND (Субконто2=:Склад)),) AS ОсновнойОстатки      
...

  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #139 - 13. Июня 2007 :: 09:08
Печать  
При передаче позиции документа нужно использовать первый модификатор.
Правила обозначения модификаторов
Код
Выбрать все
$БИОстатки.Основной(:ВыбДата ~, ... 

  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Ronny
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 10
Зарегистрирован: 01. Июня 2007
Re: Прямые запросы к бухгалтерским итогам
Ответ #140 - 13. Июня 2007 :: 09:30
Печать  
Доброго времени суток!
Есть задачка - сделать ОСВ прямыми запросами.
Из тех знаний, которыми обладаю следует, что это делается тремя запросами (НачОстатки, Обороты, КонОстатки).

Вопрос: можно ли решить задачку меньшим числом запросов? Круглые глаза
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #141 - 13. Июня 2007 :: 09:40
Печать  
Можно двумя.   Смех
КонОстатки = НачОстатки + Обороты
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Ronny
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 10
Зарегистрирован: 01. Июня 2007
Re: Прямые запросы к бухгалтерским итогам
Ответ #142 - 13. Июня 2007 :: 11:54
Печать  
Есть запрос:
Код
Выбрать все
СтрокаУсловия = "(СчетДТ IN (Select Val from #ВыбСчет)) OR (СчетКТ IN (Select Val from #ВыбСчет))";
	ТекстЗапроса = "SELECT ОсновнойОборотыДтКт.СчетДт [СчетДт $Счет.Основной],
	| ОсновнойОборотыДтКт.СчетКт [СчетКт $Счет.Основной],
	| ОсновнойОборотыДтКт.Валюта [Валюта $Справочник.Валюты],
	| ОсновнойОборотыДтКт.СуммаОборот,
	| ОсновнойОборотыДтКт.КоличествоОборот,
	| ОсновнойОборотыДтКт.ВалютнаяСуммаОборот
	|FROM $БИОборотыДтКт.Основной(:ДатаН,:ДатаК,,,"+ СтрокаУсловия +", ) AS ОсновнойОборотыДтКт
	|LEFT OUTER JOIN _1SACCS AS ПланСчетовДт (NOLOCK) ON ОсновнойОборотыДтКт.СчетДт = ПланСчетовДт.ID
	|LEFT OUTER JOIN _1SACCS AS ПланСчетовКт (NOLOCK) ON ОсновнойОборотыДтКт.СчетКт = ПланСчетовКт.ID
	|";   

     
Вешает 1С очень надолго (40 мин, дальше скидывал задачу)
Почему? Озадачен
Корректировка... Вешает только если ДатаН = НачГода
« Последняя редакция: 14. Июня 2007 :: 05:55 - Ronny »  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #143 - 14. Июня 2007 :: 10:37
Печать  
Скачай из репозитария исправленную версию. Там исправлена ошибка, связанная с OR в условии. Вероятно это твой случай.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
idw
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 29
Зарегистрирован: 08. Июня 2007
Re: Прямые запросы к бухгалтерским итогам
Ответ #144 - 15. Июня 2007 :: 09:27
Печать  
Я всё же разобрался:

Код
Выбрать все
ТекстЗапроса = "
	|SELECT ОсновнойОстатки.Счет [Счет $Счет.Основной]
	|		, ОсновнойОстатки.Субконто1 [Субконто1 $Субконто]
	|		, ОсновнойОстатки.Субконто1_вид
	|		, ОсновнойОстатки.Субконто2 [Субконто2 $Субконто]
	|		, ОсновнойОстатки.Субконто2_вид
	|		, ОсновнойОстатки.КоличествоОстатокДт
	|		, ОсновнойОстатки.КоличествоОстатокКт
	|FROM $БИОстатки.Основной(:КонДата,,
	|			(Счет = :ВыбСчет),
	|			(Номенклатура, Склады),
	|			(РазделительУчета = :РазделительУчета)) AS ОсновнойОстатки
	|INNER JOIN $Справочник.Номенклатура AS СпрНом (NOLOCK) ON ОсновнойОстатки.Субконто1 = СпрНом.ID
	|ORDER BY СпрНом.Descr";  
 



С AccountsRecordset быстрее стал отчет формироваться чем с помощью БыстрыхИтогов.
  
Наверх
 
IP записан
 
Ronny
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 10
Зарегистрирован: 01. Июня 2007
Re: Прямые запросы к бухгалтерским итогам
Ответ #145 - 21. Июня 2007 :: 05:54
Печать  
Имеется запрос:
Код
Выбрать все
SQLSession = СоздатьОбъект("AccountsRecordSet");
	SQLSession.SetDatabase1C();
	SQLSession.УстановитьТекстовыйПараметр("ВыбДата", НачМесяца(ДатаРасчета));
	SQLSession.УстановитьТекстовыйПараметр("ВыбСчет", СпСчетов);
	SQLSession.УложитьСписокОбъектов(СпСчетов, "#ВыбСчет");
	СтрокаУсловия = "(Счет IN (Select Val from #ВыбСчет))";
	ТекстЗапроса = "SELECT ОсновнойОстатки.Счет [Счет $Счет.Основной],
		| ОсновнойОстатки.Валюта [Валюта $Справочник.Валюты],
		| ОсновнойОстатки.Субконто1 [Субконто1 $Субконто],
		| ОсновнойОстатки.Субконто1_вид,
		| ОсновнойОстатки.СуммаОстатокДт,
		| ОсновнойОстатки.СуммаОстатокКт,
		| ОсновнойОстатки.ВалютнаяСуммаОстатокДт,
		| ОсновнойОстатки.ВалютнаяСуммаОстатокКт
		|FROM $БИОстатки.Основной(:ВыбДата, , " + СтрокаУсловия + ", ОсновныеСредства) AS ОсновнойОстатки
		|	INNER JOIN _1SACCS AS ПланСчетов (NOLOCK) ON ОсновнойОстатки.Счет = ПланСчетов.ID
		|ORDER BY ПланСчетов.SCHKOD";  
	Состояние("Расчитываются первоначальная стоимость и начисленная амортизация объектов ОС");
	SQLSession.ВыполнитьИнструкцию(ТекстЗапроса, ТЗОС); 

     

При использовании AccountsRecordset.ert - все норм!
А при использовании AccountsRecordsetV2.ert дает ошибку синтаксиса (35 строка - syntax near ')'   ).

Кто знаит почему? Заранее спасибо!
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #146 - 21. Июня 2007 :: 07:17
Печать  
У меня в текущей версии не воспроизводится.

Если дата файла AccountsRecordsetV2.ert раньше 19.06 - скачай свежий из репозитария.
Иначе - покажи результат работы метода .Отладка(1).
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
dsultan
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 4
Зарегистрирован: 02. Апреля 2008
Re: Прямые запросы к бухгалтерским итогам
Ответ #147 - 03. Апреля 2008 :: 06:59
Печать  
как в нижеследующий запрос добавить вывод наименования номенклатуры?

ар = СоздатьОбъект("AccountsRecordSet");
ар.УстановитьТекстовыйПараметр("ВыбСчет",  "    1V   ");
ар.УстановитьТекстовыйПараметр("ВыбДата",  РабочаяДата());
ТекстЗапроса = "
    |SELECT КоличествоОстаток, СуммаОстаток
    |FROM $БИОстатки.Основной(:ВыбДата,,
    |        (Счет = :ВыбСчет), Номенклатура
    |    ) БИОстаткиОсновной
    |";
тз = ар.ВыполнитьИнструкцию(ТекстЗапроса);
тз.ВыбратьСтроку();
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #148 - 03. Апреля 2008 :: 09:18
Печать  
dsultan писал(а) 03. Апреля 2008 :: 06:59:
как в нижеследующий запрос добавить вывод наименования номенклатуры?

Код
Выбрать все
|SELECT КоличествоОстаток, СуммаОстаток
|	, Номенклатура.DESCR
|FROM $БИОстатки.Основной(:ВыбДата,,
|		(Счет = :ВыбСчет), Номенклатура
|	) БИОстаткиОсновной
|	LEFT JOIN $Справочник.Номенклатура Номенклатура (NOLOCK) ON БИОстаткиОсновной.Субконто1 = Номенклатура.ID
 



dsultan писал(а) 03. Апреля 2008 :: 06:59:
ар.УстановитьТекстовыйПараметр("ВыбСчет",  "    1V   ");

Ужас
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
dsultan
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 4
Зарегистрирован: 02. Апреля 2008
Re: Прямые запросы к бухгалтерским итогам
Ответ #149 - 03. Апреля 2008 :: 09:50
Печать  
berezdetsky писал(а) 03. Апреля 2008 :: 09:18:
Код
Выбрать все
|SELECT КоличествоОстаток, СуммаОстаток
|	, Номенклатура.DESCR
|FROM $БИОстатки.Основной(:ВыбДата,,
|		(Счет = :ВыбСчет), Номенклатура
|	) БИОстаткиОсновной
|	LEFT JOIN $Справочник.Номенклатура Номенклатура (NOLOCK) ON БИОстаткиОсновной.Субконто1 = Номенклатура.ID
 




спасибо

dsultan писал(а) 03. Апреля 2008 :: 06:59:
ар.УстановитьТекстовыйПараметр("ВыбСчет",  "    1V   ");
Ужас


уже поправил, newbie Улыбка
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 ... 8 9 [10] 11 12 ... 17
ОтправитьПечать