Фильтр на журнал
Модераторы: m0p3e, edward_K, Модераторы
Фильтр на журнал
Поделитесь опытом, как по таблице OBOROT посмотреть удаленные записи по определенному счету.
Бухгалтера вечно задают вопрос типа:
КТО НАРУШИЛ СЧЕТ 20.
И если записи модифицировались или добавлялись, то все просто, берем nrec и ищем.
А если удалялись и nrec неизвестен?
Перебирать 1000 записей в журнале????
P.S.В документации нашел ф-ии:
GetOldFieldValueFromJournal
GetNewFieldValueFromJournal
но как их использовать?
			
			
									
						
										
						Бухгалтера вечно задают вопрос типа:
КТО НАРУШИЛ СЧЕТ 20.
И если записи модифицировались или добавлялись, то все просто, берем nrec и ищем.
А если удалялись и nrec неизвестен?
Перебирать 1000 записей в журнале????
P.S.В документации нашел ф-ии:
GetOldFieldValueFromJournal
GetNewFieldValueFromJournal
но как их использовать?
- 
				vitali
 - Постоянный обитатель
 - Сообщения: 192
 - Зарегистрирован: 29 мар 2005, 17:49
 - Откуда: г.Иркутск (это где Байкал, озеро такое) ОАО "Кедр" (ликеро-водка)
 - Контактная информация:
 
Re: Фильтр на журнал
А если использовать при просмотре журнала в support-е Ctrl-S или Ctrl-A, т.е. встроенные фильтры?
Правда сам не пробовал
			
			
									
						
										
						Правда сам не пробовал
Re: Фильтр на журнал
А как из мемо-поля вытащить значение конкретного поля?
Вроде бы ф-ии
GetOldFieldValueFromJournal
GetNewFieldValueFromJournal
предназначены для этого, может кто их использовал?
			
			
									
						
										
						Вроде бы ф-ии
GetOldFieldValueFromJournal
GetNewFieldValueFromJournal
предназначены для этого, может кто их использовал?
- 
				ecasoft
 - Местный житель
 - Сообщения: 645
 - Зарегистрирован: 29 мар 2005, 17:49
 - Откуда: г.Королев МО ООО "Эффективная Комплексная Автоматизация- СОФТ"
 
Re: Фильтр на журнал
Var dblValue: double; 
получите по имени OBOROT запись таблицы x$Files для второго параметра
Параметны такие
1 искомое поле, например Oborot.summa
2 x$files.xf$recordfixed
3 x$journal.dataRec
4 x$journal.operation
5 dblValue
 
Значение поля будет в переменной dblValue
С уважением, Игорь
			
			
									
						
							получите по имени OBOROT запись таблицы x$Files для второго параметра
Параметны такие
1 искомое поле, например Oborot.summa
2 x$files.xf$recordfixed
3 x$journal.dataRec
4 x$journal.operation
5 dblValue
Значение поля будет в переменной dblValue
С уважением, Игорь
Некоммерческое общение в форуме
			
						- 
				klimin_a_s
 - Постоянный гость
 - Сообщения: 69
 - Зарегистрирован: 29 мар 2005, 17:49
 - Откуда: Москва
 - Контактная информация:
 
Re: Фильтр на журнал
Как-то писал "адскую машинку" - которая выгружает все мемо-поля всесте со структурой из журнала во внешний файл, а затем спец. прогой можно найти ответ на вопрос, н-р, "Кто удалил проводку по Д70 на сумму 1000 руб?".
			
			
									
						
							С уважением,
Климин Андрей
			
						Климин Андрей
Re: Фильтр на журнал
Использовал функцию GetOldFieldValueFromJournal, по рекомендациям Косякина Игоря, в ARD- отчете.
Первая запись обрабатывается, и дает вернный результат, но почему-то происходит зацикливание, и в отчете первая запись повторяется бесконечно.
Отчет простейший.
запрос
.create view t1 as
select DATAREC, Operation
from X$JOURNAL
where ((9011==TABLECODE));
а затем, цикл
.{table t1
.begin
GetNewFieldValueFromJournal(OBOROT.SCHETO,566 , DATAREC, Operation, pSch);
end.
^
.}
			
			
									
						
										
						Первая запись обрабатывается, и дает вернный результат, но почему-то происходит зацикливание, и в отчете первая запись повторяется бесконечно.
Отчет простейший.
запрос
.create view t1 as
select DATAREC, Operation
from X$JOURNAL
where ((9011==TABLECODE));
а затем, цикл
.{table t1
.begin
GetNewFieldValueFromJournal(OBOROT.SCHETO,566 , DATAREC, Operation, pSch);
end.
^
.}
Re: Фильтр на журнал
У меня, только одна идея:
ф-ия GetNewFieldValueFromJournal, переводит указатель на первую запись.
Как с этим бороться?
p.s. Для проверки, оставлял в журнале, только одну запись, то же зацикливается.
			
			
									
						
										
						ф-ия GetNewFieldValueFromJournal, переводит указатель на первую запись.
Как с этим бороться?
p.s. Для проверки, оставлял в журнале, только одну запись, то же зацикливается.
Re: Фильтр на журнал
но это же ведь не весь текст отчета? Наверное там еще что-то есть?
			
			
									
						
										
						Re: Фильтр на журнал
Вот весь отчет:
.Form 'Журнализация'
.ard
.var pSch: String;
.endvar
.create view t1 as
select DATAREC, Operation
from X$JOURNAL
where ((9011==TABLECODE));
.fields
pSch
.endfields
.{table t1
.begin
GetNewFieldValueFromJournal(OBOROT.SCHETO,566 , DATAREC, Operation, pSch);
end.
^
.}
.endform
			
			
									
						
										
						.Form 'Журнализация'
.ard
.var pSch: String;
.endvar
.create view t1 as
select DATAREC, Operation
from X$JOURNAL
where ((9011==TABLECODE));
.fields
pSch
.endfields
.{table t1
.begin
GetNewFieldValueFromJournal(OBOROT.SCHETO,566 , DATAREC, Operation, pSch);
end.
^
.}
.endform
Re: Фильтр на журнал
Естественно упростил, как мог. 
И в таком виде циклит.
			
			
									
						
										
						И в таком виде циклит.
- 
				ecasoft
 - Местный житель
 - Сообщения: 645
 - Зарегистрирован: 29 мар 2005, 17:49
 - Откуда: г.Королев МО ООО "Эффективная Комплексная Автоматизация- СОФТ"
 
Re: Фильтр на журнал
Проблема не в функции, а в том, что Вы не перемещаетесь по таблице журнала. Ничего эта функция не переводит. Работает она вполне обычно. Она просто лезет в мемо поле и достает оттуда запись. С движением по таблице она никаким боком  не связано. 
С уважением,Игорь
			
			
									
						
							С уважением,Игорь
Некоммерческое общение в форуме
			
						Re: Фильтр на журнал
Как это не перемещаюсь?
Я всегда считал, что
.{table t1
.}
это - цикл, с перемещением по набору данных, до тех пор пока он не кончится.
И если это не так, то как, тогда мне перемещаться?
p.s. Кстати, если убрать из вышеописанного примера эту функцию, то все перемещается.
			
			
									
						
										
						Я всегда считал, что
.{table t1
.}
это - цикл, с перемещением по набору данных, до тех пор пока он не кончится.
И если это не так, то как, тогда мне перемещаться?
p.s. Кстати, если убрать из вышеописанного примера эту функцию, то все перемещается.
- 
				ecasoft
 - Местный житель
 - Сообщения: 645
 - Зарегистрирован: 29 мар 2005, 17:49
 - Откуда: г.Королев МО ООО "Эффективная Комплексная Автоматизация- СОФТ"
 
Re: Фильтр на журнал
Выслал на почту примеры работы с поиском изменений по Оборотам и Накладным (как пример) на ВИПе по журналу. Там есть работа с разными функциями. Это делалось года два назад для компании ЮКОС. Хотя это не конечный код - конечный код дорабатывался ими уже..хотя дорабатывался там просто сервис интерфейса по вводу ограничений по номеру счета, пользователю, интервалу и т.д. Конечный вариант у меня не сохранился. Хотя в принципе его написать ничего не стоит по данным примерам - там все есть.
С уваженеим, Игорь
			
			
									
						
							С уваженеим, Игорь
Некоммерческое общение в форуме
			
						- 
				ALEKS123
 - Местный житель
 - Сообщения: 278
 - Зарегистрирован: 29 мар 2005, 17:49
 - Откуда: Москва
 - Контактная информация:
 
Re: Фильтр на журнал
Игорь, доброго времени суток. А можно, если несложно, тот же пример и на мою почту? Спасибо