Автор |
Тема: Прогонка факта в факте, возможно ли это? (Прочитано 6316 раз) |
|
Seroga
Я люблю этот Форум!
Просмотреть Профиль |
Сообщений: 40
|
|
Прогонка факта в факте, возможно ли это?
« В: 10.09.19 в 20:55:14 » |
Цитировать | Править
|
В общем-то вопрос сформулирован в теме .... В двух словах поясню. 1 вариант. Прогоняем (первая прогонка) факт 1 (32 поля), у события в факте 11 признаков, в каком из 11 полей факта будет найден нужный нам признак не известно, ..... находим нужный факт, забираем из него нужные данные и уходим на вторую прогонку того же факта 1, например по call, после суммирования и нахождения нужных данных в фактах второй прогонки, уже только с нужными нам фактами работаем, выносим их на экран/печать и по return возвращаемся в тело первой прогонки факта 1, ищем следующий подходящий ... и так до конца ленты фактов. 2 вариант. В первой прогонке факт 1 можно заменить на факт 2, т.е. прогонять два разных факта, суть та же самая. Вывести на экран получается только данные одной сделки, первой ...., а хотелось бы большего. Возможно как-либо реализовать написанное выше?
|
|
Зарегистрирован |
|
|
|
Svetlana
Moderator
Просмотреть Профиль |
Сообщений: 409
|
|
Re: Прогонка факта в факте, возможно ли это?
« Ответить #1 В: 11.09.19 в 08:50:50 » |
Цитировать | Править
|
Seroga, так покажите КАК вы уже сделали и что именно не получилось?
|
|
Зарегистрирован |
|
|
|
Seroga
Я люблю этот Форум!
Просмотреть Профиль |
Сообщений: 40
|
|
Re: Прогонка факта в факте, возможно ли это?
« Ответить #2 В: 11.09.19 в 14:48:50 » |
Цитировать | Править
|
В "вопросе" описан механизм, посредством которого желательно получить определенный результат. Вопрос, в принципе, этот механизм позволит получить желаемый результат или нет. Ответ - да или нет. Если да, то все ошибки, не позволяющие получить результат, это проблемы пользователя … и все, … это уже дело техники пользователя. select Факт1 …… sort buffer 4 rewind buffer :ff_1 search Факт1 …… if [success]=1 Проверка по признаку …. Нашли номер нужного договора - №. Call 2 Goto ff_1 Endif :2 rewind facts :ff_2 search Факт1 … № ….. if [success]=1 Собираем из всех строк фактов данные по определенному номеру договора, … выносим в строчку, в отчет. Return .... идем, т.е. возвращаемся, искать следующий номер договора удовлетворяющий признакам Goto ff_2 Endif
|
« Изменён в : 11.09.19 в 16:38:41 пользователем: Seroga » |
Зарегистрирован |
|
|
|
box_vma
Я люблю этот Форум!
Просмотреть Профиль |
Сообщений: 49
|
|
Re: Прогонка факта в факте, возможно ли это?
« Ответить #3 В: 11.09.19 в 16:05:01 » |
Цитировать | Править
|
Добрый день! Если правильно понял задачу, может как-то так: arrаy % rewind facts :label1 search {1,'НужныйФакт1'} if [success]=1 id=[fact_f N1] уникальный идентификатор факта, N1 - порядковый номер поля факта lb=[fact_f N2] метка, соответствующая факту [set %,id,lb] сохраним goto label1 endif :label2 search {1,'НужныйФакт2'} if [success]=1 id=[fact_f N1] уникальный идентификатор факта, N1 - порядковый номер поля факта lb=[get %,id] метка, соответствующая факту if lb=1 Действие при lb=1 elseif lb=2 Действие при lb=2 ... elseif lb=N Действие при lb=N endif goto label2 endif Меток факта может быть несколько, во второй части формы они могут быть обработаны в комплексе. Либо, можно в файле-коэффициенте, в котором сохраняется факт, записать уточняющие экстра-параметры, которые затем анализировать при обработке ленты фактов.
|
|
Зарегистрирован |
|
|
|
|
|