Переключение на Главную Страницу Страницы: 1 ... 49 50 [51] 52 53 ... 60 ОтправитьПечать
Очень популярная тема (более 25 ответов) Класс "ПрямойЗапрос" (число прочтений - 333869 )
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #750 - 30. Июня 2010 :: 22:31
Печать  
Выложена новая версия. Все заявленные ошибки исправлены.

1.07.012 от 01.07.10 г.
- Добавлена возможность использования параметров вида @ИмяПараметра в виртуальном значении $ПоследнееЗначение без ограничений. В качестве типов колонок данных может выступать «Дата» или «ПозицияДокумента».
- Исправлена ошибка подготовки ВТ «БИОстаткиОбороты» не учитывался последний параметр.
- Исправлена ошибка подготовки ВТ «ПодчиненныеДокументы». Неправильно подготавливались параметры таблицы.
- Новое описание типов колонок «ПозицияДокумента».
- Добавлено в документацию описание типов колонок для методов «ОписаниеПараметра» и «СоздатьТаблицу». См. в разделе «Список типов колонок».

При использовании параметризированных запросов и метода СоздатьТаблицу советую обратить внимание на новый раздел в документации «Список типов колонок».
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #751 - 30. Июня 2010 :: 22:37
Печать  
Кстати, сегодня 01.07.10 года, ровно год, как данный класс вышел в свой первый релиз. Так сказать "увидел свет".
В общем то подводя итог, наверное можно сказать что разработка удалась.  Очень довольный
Спасибо всем, кто принимал участие.
Отдельное спасибо тем, без кого данной разработки в принципе не состоялось бы.

Если у кого найдутся силы могут высказать свое резюме по поводу проекта. Как никак юбилейчик. Улыбка

Хочется сказать что проект "ПрямойЗапрос" можно считать оконченным. Но, наверное это преждевременно.  Круглые глаза
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #752 - 01. Июля 2010 :: 06:17
Печать  
Поздравляю!
Помнишь еще города, где тебя ждет пиво? Волгоград в их числе так и остается Подмигивание
  
Наверх
 
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #753 - 01. Июля 2010 :: 06:30
Печать  
Кавказские Минеральные Воды также с радостью  примут автора класса - обеспечим максимальный отдых Улыбка
  
Наверх
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #754 - 01. Июля 2010 :: 06:30
Печать  
Поздравляю!!!
  
Наверх
IP записан
 
classic
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 330
Местоположение: г. Харьков
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #755 - 05. Июля 2010 :: 08:35
Печать  
Поздравляю с годовщиной!!!

А я наконец-то нашел время разобраться со старым глюком: когда запрос не работал из-за того, что вместо значения даты класс подставлял строку 'Неправильный формат времени'. Оказывается, бывают торговые базы у которых в Операции-Управление оперативными итогами не указана периодичность хранения остатков (не указана вообще, пусто в окошке). И в таком случае:
МетаДата.ПолучитьНачПериода(ДатаОкончРасчетов) = '  .  .  ',
а МетаДата.ПолучитьКонПериода(ДатаОкончРасчетов)+1 = 'Неправильный формат времени'.

Ситуация редкая, но вдруг кому пригодится.
  
Наверх
 
IP записан
 
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #756 - 05. Июля 2010 :: 09:52
Печать  
Интересный "прикол". А если периодичность не указана как физически 1С хранит остатки Улыбка. Надо будет глянуть ради прикола.
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #757 - 09. Июля 2010 :: 08:34
Печать  
Решил-таки попробовать ВТ по бух. таблицам. Чё-т с лёту не получилось.
В таком виде вообще не выполняется, если указан "Договор" (во вложении - всё что вывалилось в окно сообщений пр РежимеОтладки = 1). Без указания отбора по договору - вроде что-то показывает.
Код
Выбрать все
Процедура Сформировать()
	спСчетов = СоздатьОбъект("СписокЗначений");
	спСчетов.ДобавитьЗначение(СчетПоКоду("77.5"));
	спСчетов.ДобавитьЗначение(СчетПоКоду("77.1"));
	спСчетов.ДобавитьЗначение(СчетПоКоду("77.7"));

	ПрямойЗапрос = СоздатьОбъект("ПрямойЗапрос");
	ПрямойЗапрос.УложитьСписокЗначений(спСчетов,"#Счета77");

	стрУсловие = "";
	Если Договор.Выбран()=1 Тогда
		стрУсловие = " (Субконто1 = :Договор) ";
	КонецЕсли;

	ТекстЗапроса = "
	|ВЫБРАТЬ
	|	ОборотыОсновной.Субконто1 [ДоговорСтрахования $Субконто]
	|	, ОборотыОсновной.Субконто1_вид КАК ДоговорСтрахования_вид
	|	,ОборотыОсновной.СуммаОборот [СуммаОборот :число.15.2]
	//|	,ОборотыОсновной.*
	|ИЗ $БИОбороты.Основной(:НачДата
	|	,:КонДата
	|	,Документ
	|	,#Счета77
	|	,(ДоговораСтрахования)
	|	,БЕЗКОРСЧЕТОВ
	|	,БЕЗСУБКОНТО
	|	,(Сумма)
	|	,"+стрУсловие+") КАК ОборотыОсновной
	|";
	ПрямойЗапрос.РежимОтладки = 1;
	ПрямойЗапрос.УстановитьТекстовыйПараметр("НачДата", НачГода(ТекущаяДата()));
	ПрямойЗапрос.УстановитьТекстовыйПараметр("КонДата", КонГода(ТекущаяДата()));
	ПрямойЗапрос.УстановитьТекстовыйПараметр("Договор", Договор);
	ПрямойЗапрос.Текст = ТекстЗапроса;
	_ГМ.ПросмотретьРезультат(ПрямойЗапрос);
КонецПроцедуры 


Теперь, если я поменяю строку формирования условия на след. (просто убрать скобки):
Код
Выбрать все
Если Договор.Выбран()=1 Тогда
		стрУсловие = " Субконто1 = :Договор";
	КонецЕсли; 


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

Что я делаю не так?
  

bi_err.txt ( 4 KB | Загрузки )
Наверх
 
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #758 - 09. Июля 2010 :: 08:44
Печать  
1)
Код
Выбрать все
ПрямойЗапрос.УложитьСписокЗначений(спСчетов,"#Счета77","Счет"); 


2)
Код
Выбрать все
|	,"+стрУсловие+",) КАК ОборотыОсновной 


Секция Соединение еще есть Подмигивание
  
Наверх
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #759 - 09. Июля 2010 :: 08:46
Печать  
3)
Код
Выбрать все
|	,:КонДата~ 


Для включения в конец периода
  
Наверх
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #760 - 09. Июля 2010 :: 08:54
Печать  
Уважаемое сообщество.
Уже давно зреет мысль о создании учебника по классу практической направленности.
То есть глобально состоящего из 3 разделов
1. Написание запросов с использованием класса ПрямойЗапрос  - от простого к сложному.
2. Тонкая оптимизация прямых запросов.
3. Вывод и обработка результатов запроса с применением дополнительных классов 1С++ (ИндексированнаяТаблица, АссоциативныйВектор). Применение дополнительных компонент (TableDoc, Yoksel) при выводе информации на экран.
Хотелось бы услышать отзыв общественности насколько это интересно и будет ли это востребовано.
Заранее всем спасибо за отзывы.
Если требуется расшифровка разделов - пишите расскажу свое видение а так глядишь и перейдем к обсуждению подробного содержания  Очень довольный
  
Наверх
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #761 - 09. Июля 2010 :: 09:00
Печать  
leshik, да с исправлениями ошибка не вываливается. Только получилось вот так:
Код
Выбрать все
ПрямойЗапрос.УложитьСписокЗначений(спСчетов,"#Счета77", "Основной"); 


Но всё равно по указанному мной договору проводок не вижу (
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #762 - 09. Июля 2010 :: 09:01
Печать  
leshik писал(а) 09. Июля 2010 :: 08:54:
Уважаемое сообщество.
Уже давно зреет мысль о создании учебника по классу практической направленности.
То есть глобально состоящего из 3 разделов
1. Написание запросов с использованием класса ПрямойЗапрос  - от простого к сложному.
2. Тонкая оптимизация прямых запросов.
3. Вывод и обработка результатов запроса с применением дополнительных классов 1С++ (ИндексированнаяТаблица, АссоциативныйВектор). Применение дополнительных компонент (TableDoc, Yoksel) при выводе информации на экран.
Хотелось бы услышать отзыв общественности насколько это интересно и будет ли это востребовано.
Заранее всем спасибо за отзывы.
Если требуется расшифровка разделов - пишите расскажу свое видение а так глядишь и перейдем к обсуждению подробного содержания  Очень довольный

Да кто ж когда был против дополнительных мануалов?  Улыбка
  
Наверх
 
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #763 - 09. Июля 2010 :: 09:35
Печать  
Ну важно же не столько "кто против" а "кто за" - важно мнение людей по поводу содержания. В общем диалог важен так сказать Улыбка
  
Наверх
IP записан
 
Попытка1С
1c++ donor
Отсутствует


Делал все, иногда быстро.

Сообщений: 103
Местоположение: Санкт-Петербург
Зарегистрирован: 28. Февраля 2008
Пол: Мужской
Re: Класс "ПрямойЗапрос"
Ответ #764 - 09. Июля 2010 :: 10:22
Печать  
Леха, отличная идея.  Улыбка
Больше практики, больше примеров, больше разбора ситуаций оптимизаций, примеры из жизни кстати тоже, сейчас это нормальная ситуация для учебников по технической части.

Вообщем надо =)
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 ... 49 50 [51] 52 53 ... 60
ОтправитьПечать