Страница 1 из 1
					
				Ошибка: "Запись не найдена. Код ошибки 4"
				Добавлено: 07 фев 2002, 08:55
				 hope
				Сделала ARD-отчет, все формируется и считается, но постоянно выдается ошибка "Запись не найдена. Код ошибки 4".
По-видимому в каком-то потоке нет записей. Как это отследить и поправить? ???
			 
			
					
				Re: Ошибка: "Запись не найдена. Код ошибки 4"
				Добавлено: 07 фев 2002, 11:17
				 ALEKS123
				Сделать можно по-разному. Вот один из самых простых способов
.FORM
.ARD
.var
 - - - - - - - -
.endvar
 - - - - - - - -
.create view MM
as select * from
soprhoz,oborot where
((
 MN_RE /== soprhoz.csoprdoc (noindex) and
 soprhoz.nrec /== oborot.csoprhoz
));
- - - - - - - - 
IF MM.GETFIRST = tsOK do
 {
 - - - - -
 - - - - - - 
 - - - - - - 
 } WHILE MM.GETNEXT = tsOK;
Этот же кусок но немного по другому
.Var 
PRZ : word;
.endvar
.create view MM
as select * from
soprhoz,oborot where
((
 MN_RE /== soprhoz.csoprdoc (noindex) and
 soprhoz.nrec /== oborot.csoprhoz
));
- - - - - 
PRZ := MM.GETFIRST;
.{WHILE PRZ = 0;
 - - - - 
 - - - 
 - - - - 
 - - - -
PRZ := MM.GETNEXT;
.}
- - - - 
- - - - 
Вот еще пример, как проверить наличие запичей в таблице
.Form 'My'
.F 'My.out'
.ARD
.var
  GrNoE:boolean
.endvar
.Create view LogTab
  As Select *
  from
    GroupMC, KatMC, KatEd
  where
    ((GroupMC.NRec == KatMC.cGroupMC and
      KatMC.cED    == KatEd.NRec
    ))
  ;
 +------------------------------------------------------------------------------------+
 |                        Наименование                       | Бар-код      | Масса   |
 +------------------------------------------------------------------------------------+
.{table 'LogTab.GroupMC';
.begin
  GrNoE:=IsValidAll(tnKatMC);
end.
.{ ?Internal;(GrNoE)
.FIELDS
  GroupMC.KOD
  GroupMC.Name
.ENDFIELDS
 Группа @@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 ---------------------------------------------------------------
.{table 'LogTab.KatMC';
.FIELDS
  KatMC.Name
  KatMC.BarKod : 'P:R'
  KatMC.Massa : 'B'
.ENDFIELDS
 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@  &#&&&&&&&
.} //KatMC
.FIELDS
// Выводится не поле, а его макс. значение
  KatMC.Massa : 'MAX'
// выводится мин. значение поля
  KatMC.Massa : 'MIN'
// выводится сумма значений поля
  KatMC.Massa : 'SUM'
// выводится среднее значение поля
  KatMC.Massa : 'AVG'
.ENDFIELDS
                                                         -----------------------------
                                                         Максимальная масса: &&&&&&&&&
                                                         Минимальная  масса: &&&&&&&&&
                                                         Сумма масс        : &&&&&&&&&
                                                         Ср%E
			 
			
					
				Re: Ошибка: "Запись не найдена. Код ошибки 4"
				Добавлено: 08 фев 2002, 16:02
				 GalaxyFoe
				А в ard-отчете есть команды getfirst?
			 
			
					
				Re: B ARD-отчетах
				Добавлено: 08 фев 2002, 16:15
				 ALEKS123
				есть комнада GETFIRST. А также и команды
GETNEXT, GETPREV, GETLAST
			 
			
					
				Re: B ARD-отчетах
				Добавлено: 08 фев 2002, 16:32
				 GalaxyFoe
				да не.... сорри, это было 2 hope про сабж 

 
			
					
				Re: Ошибка: "Запись не найдена. Код ошибки 4"
				Добавлено: 08 фев 2002, 16:59
				 Maverick
				Чтобы в будущем так не лажонуться)))
На запись типа If GetFirst Table=tsOk  в указанном АРДотчете компилер ругнется )))
Ну не поддерживает ФКОМ константы tsOk )))
Надо писать If GetFirst Table = 0 (нуль т.е.)
Сорри за поучения, но перед тем как свои исходники выкладывать, нужно хотя бы их скомпилить, если нет времени проверить работает ли он ввобще..
Вот... злой я сегодня.
			 
			
					
				Re: ????
				Добавлено: 08 фев 2002, 19:59
				 ALEKS123
				С таким уважамым на форуме человеком сложно спорить, конечно, но я все же на твоем месте (по данному вопросу) высказался бы более осторожно. Например, сказал бы так - у меня (тебя) ARD не воспринимает константы типа tsOK. А у меня вспринимает за милую душу. 
Просто советую в SUPPORT.CFG вставить несколько строк 
OpenResources=f:\gal\EXE\extfun.res
OpenResources=f:\gal\exe\g_adm.res
OpenResources=f:\gal\exe\g_asup.res
OpenResources=f:\gal\exe\g_main.res
OpenResources=f:\gal\exe\g_fin.res
OpenResources=f:\gal\exe\g_oper.res
OpenResources=f:\gal\exe\g_menu.res
OpenResources=f:\gal\EXE\g_vip.res
Может быть и с избытком, зато работать будет всегда.
А чтобы не компилять прототипы, если изменяешь какую-нибудь формочку, то советую добавить еще и следующие
OpenResources=f:\gal\EXE\fix1.res
OpenResources=f:\gal\EXE\oper.res
OpenResources=f:\galEXE\oper03fix01.res
OpenResources=f:\gal\EXE\oper03fix02.res
OpenResources=f:\gal\EXE\oper03fix03.res
Аналогично и зарплатные патчи.
Удачи!