Прямой SQL...
-
- заказчик
- Сообщения: 117
- Зарегистрирован: Пт, 26/10/2007 14:16
- Имя Фамилия: Денис Кучин
- Откуда: Геомостпроект НПО
Не вполне корректный довод. Много предыдущих лет, до появления этой новой функциональности приходилось как то изыскивать способы повышения скорострельности некоторых элементом системы. В частности в этом топике речь идет об отчетности. Поэтому, в то время были, что называется, "все средства хороши". Ведь главбуха/начальника отдела продаж/ и т.п. интересует не только функциональность но и скорострельность системы. А какими средствами было это сделано, их вообще никоим образом не волнует. Поэтому те действа, которые,Вы, окрестили "свистоплясками" были вызваны объективной необходимостью.
-
- заказчик
- Сообщения: 24
- Зарегистрирован: Чт, 10/07/2008 07:43
- Имя Фамилия: Дамир Ибатуллин
- Откуда: Стерлитамак
Вот по этой части примерчиком никто не подсобит? или может, подробностями поделится?...den писал(а): 3. Далее пишите свой вип/ард и вставляете в таблицу, укаханную в п. 1 какое нить значение. Отрабатывает Ваша процедура на севере и далее в теле вип/ард можно взять из результирующей таблицы данные и обработать их нужным Вам образом.
-
- заказчик
- Сообщения: 117
- Зарегистрирован: Пт, 26/10/2007 14:16
- Имя Фамилия: Денис Кучин
- Откуда: Геомостпроект НПО
Все зависит от конкретной задачи, которую Вы хотите получить. В свое время я это делал (версия 582), чтобы получить очень оперативно некоторые данные, которые бы блокировали распечатку счета - информацию по определенному разрезу о задолженность по отгрузкам, которые бы и выводились на экран юзверю при попытке печати отгрузочного документа . В силу очень больших объемов анализируемых таблиц и было сделано именно так примерно (к сожалению это было на прошлой работе и точно нюансов уже не помню..) :
В теле своего vip-чика, например, в событии Cminit
Cminit: {
// нашел свободную таблу БД, которая по структуре подходит под нужные мне, отдаваемые параметры...
insert mytable1 set
// здесь отдаем в эту таблицу нужные значения в качестве параметров
// например, диапозон дат, организацию анализируемую, и текущего юзверя системы (данную прбамбасину могут запустить несколько юзверей одновременно....)
field1 := data_beg
, field2 := data_end
, field3 := cur_org
, field4 := см. функции Атанлантиса UserId,Username
// далее все что нужно обрабатываем на стороне скуля
// и кладем в результирующую таблицу (mytable2). Я туда ложил даты,номера счетов и суммы задолженностей, высчитанные сториедной процедурой скуля
// ну а теперь можно забрать данные оттуда
// обработав их в цикле с нужнуыми условиями и фильтрами
_Loop mytable2 where <условия>
{
// здесь берем эти данные для своих целей (в отчет , для отражения в экранных элементах пользователю и т.п....)
}
В теле своего vip-чика, например, в событии Cminit
Cminit: {
// нашел свободную таблу БД, которая по структуре подходит под нужные мне, отдаваемые параметры...
insert mytable1 set
// здесь отдаем в эту таблицу нужные значения в качестве параметров
// например, диапозон дат, организацию анализируемую, и текущего юзверя системы (данную прбамбасину могут запустить несколько юзверей одновременно....)
field1 := data_beg
, field2 := data_end
, field3 := cur_org
, field4 := см. функции Атанлантиса UserId,Username
// далее все что нужно обрабатываем на стороне скуля
// и кладем в результирующую таблицу (mytable2). Я туда ложил даты,номера счетов и суммы задолженностей, высчитанные сториедной процедурой скуля
// ну а теперь можно забрать данные оттуда
// обработав их в цикле с нужнуыми условиями и фильтрами
_Loop mytable2 where <условия>
{
// здесь берем эти данные для своих целей (в отчет , для отражения в экранных элементах пользователю и т.п....)
}