Access Violation

Pripombe, komentarji ali pohvale o Delphi-SI.
Odgovori
JanezZ
Prispevkov: 14
Pridružen: 26.02.2004 02:04:26

Access Violation

Odgovor Napisal/-a JanezZ » 19.07.2006 09:28:00

how to solve the following AV error....

Access violation at address 0049F0EA
in module 'project1.exe'
Read of address 000000000

or

Access violation at address 0049F0FA
in module 'project1.exe'
Read of address 000000000

once it displays one and other time the other

Huligan
Prispevkov: 475
Pridružen: 19.11.2001 10:02:31

Access Violation

Odgovor Napisal/-a Huligan » 19.07.2006 09:35:12

Well ... you didnt give any details. Its hard to answer in general.
Use menu: Search - Find Error ... and then enter the addresses (0049f0ea, 0049f0fa) provided by error message.

JanezZ
Prispevkov: 14
Pridružen: 26.02.2004 02:04:26

Access Violation

Odgovor Napisal/-a JanezZ » 19.07.2006 10:30:34

which address do zou mean?

mam Form v katerem posljem an QReport in za prvo rundo mi poslje vse normalno skozi in ce bi zelel kliknet na drug datum in step sprintat mi kaze en od tisteih ACCESS VIOLATIONS v katerem sm opazil skozi FIND ERROR da value za ECX je 00000000 .......... ali na address 0049F0EA MOV ecx, [eax]

*****************

trenutno sm proval spet z RUN in mi trenutno daja naslednji ACCESS VIOLATION 0049F0EA v kateren ecx je 00000000 in ZF 0

moj mail je Janezz@hotmail.com

T
Prispevkov: 95
Pridružen: 02.01.2005 23:18:53

Access Violation

Odgovor Napisal/-a T » 19.07.2006 10:40:06

Zgleda da nekje uporabljaš objekt ki ne obstaja. Pejt skos program, vrstico za vrstico in boš itak videl kje ti napako javi. Potem pa razišči kaj je narobe.

lp
T

JanezZ
Prispevkov: 14
Pridružen: 26.02.2004 02:04:26

Access Violation

Odgovor Napisal/-a JanezZ » 19.07.2006 10:57:50

sm pogledal vse in ne dobim ki naj bi bila napaka

napaka me kaze kot da bi sel skozi print procedure in ce bi prasal user za spet sprintat kot da bi bil ze zapert da ga ne dobi vec

Koda: Izberi vse

  

procedure TfrmBrKalendar.btnPrintClick(Sender: TObject);    //print
var
d, m, y:word;
ura:TTime;
s, nums:String;
dates, ur, st, st1, ex:String;
num:integer;

begin
  inherited;
  //****** arrange qry in alphbetical order
  with TDnevnik.qrysifranturnik do
   begin
      Close;
      //TDnevnik.qrysifranturnik.SQL.Clear;
      SQL.Clear;
      TDnevnik.qrysifranturnik.SQL.Add(' SELECT * FROM sifranturnik Order by ura');
      Open;
   end;
  //******
  TDnevnik.QRDate.Caption := lblTrenDatum.caption;
  TDnevnik.qrysifranturnik.First;

  TDnevnik.QRNo.Caption := '';
  TDnevnik.QRTime.Caption := '';
  TDnevnik.QRName.Caption := '';
  TDnevnik.QRSurname.Caption := '';
  TDnevnik.QRTel.Caption := '';
  TDnevnik.QRComents.Caption := '';

  TDnevnik.QRNo1.Caption := '';
  TDnevnik.QRTime1.Caption := '';
  TDnevnik.QRName1.Caption := '';
  TDnevnik.QRSurname1.Caption := '';
  TDnevnik.QRTel1.Caption := '';
  TDnevnik.QRComents1.Caption := '';

  TDnevnik.QRNo2.Caption := '';
  TDnevnik.QRTime2.Caption := '';
  TDnevnik.QRName2.Caption := '';
  TDnevnik.QRSurname2.Caption := '';
  TDnevnik.QRTel2.Caption := '';
  TDnevnik.QRComents2.Caption := '';

  TDnevnik.QRNo3.Caption := '';
  TDnevnik.QRTime3.Caption := '';
  TDnevnik.QRName3.Caption := '';
  TDnevnik.QRSurname3.Caption := '';
  TDnevnik.QRTel3.Caption := '';
  TDnevnik.QRComents3.Caption := '';

  TDnevnik.QRNo4.Caption := '';
  TDnevnik.QRTime4.Caption := '';
  TDnevnik.QRName4.Caption := '';
  TDnevnik.QRSurname4.Caption := '';
  TDnevnik.QRTel4.Caption := '';
  TDnevnik.QRComents4.Caption := '';

  TDnevnik.QRNo5.Caption := '';
  TDnevnik.QRTime5.Caption := '';
  TDnevnik.QRName5.Caption := '';
  TDnevnik.QRSurname5.Caption := '';
  TDnevnik.QRTel5.Caption := '';
  TDnevnik.QRComents5.Caption := '';

  TDnevnik.QRNo6.Caption := '';
  TDnevnik.QRTime6.Caption := '';
  TDnevnik.QRName6.Caption := '';
  TDnevnik.QRSurname6.Caption := '';
  TDnevnik.QRTel6.Caption := '';
  TDnevnik.QRComents6.Caption := '';

  TDnevnik.QRNo7.Caption := '';
  TDnevnik.QRTime7.Caption := '';
  TDnevnik.QRName7.Caption := '';
  TDnevnik.QRSurname7.Caption := '';
  TDnevnik.QRTel7.Caption := '';
  TDnevnik.QRComents7.Caption := '';

  TDnevnik.QRNo8.Caption := '';
  TDnevnik.QRTime8.Caption := '';
  TDnevnik.QRName8.Caption := '';
  TDnevnik.QRSurname8.Caption := '';
  TDnevnik.QRTel8.Caption := '';
  TDnevnik.QRComents8.Caption := '';

  TDnevnik.QRNo9.Caption := '';
  TDnevnik.QRTime9.Caption := '';
  TDnevnik.QRName9.Caption := '';
  TDnevnik.QRSurname9.Caption := '';
  TDnevnik.QRTel9.Caption := '';
  TDnevnik.QRComents9.Caption := '';

  TDnevnik.QRNo10.Caption := '';
  TDnevnik.QRTime10.Caption := '';
  TDnevnik.QRName10.Caption := '';
  TDnevnik.QRSurname10.Caption := '';
  TDnevnik.QRTel10.Caption := '';
  TDnevnik.QRComents10.Caption := '';

  TDnevnik.QRNo11.Caption := '';
  TDnevnik.QRTime11.Caption := '';
  TDnevnik.QRName11.Caption := '';
  TDnevnik.QRSurname11.Caption := '';
  TDnevnik.QRTel11.Caption := '';
  TDnevnik.QRComents11.Caption := '';

  while not TDnevnik.qrysifranturnik.Eof do
  begin
    ss := TDnevnik.qrysifranturnik.FieldByName('edt').asString;
    with qryurnik do
    begin
      DecodeDate(TrenDatum,y,m,d);
      if (dd = d) and (mm = m) and (yy = y) then       //works
      begin
        dates := TDnevnik.qrysifranturnik.FieldByName('datum').AsVariant;
        if dates =lblTrenDatum1.caption then
        begin
          if copy(ss,1,1)='a' then  //morning records
          begin
            nums := IntToStr(num + 1);
//*******     case         *******
            if nums = '1' then
            begin
              TDnevnik.QRNo.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end//case
            else
//*******     case         *******
            if nums = '2' then
            begin
              TDnevnik.QRNo1.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime1.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName1.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname1.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel1.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents1.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end //case
//*******     case         *******
            else
            if nums = '3' then
            begin
              TDnevnik.QRNo2.Caption := nums;
              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime2.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName2.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname2.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel2.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents2.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end//case
            else
//*******     case         *******
            if nums = '4' then
            begin
              TDnevnik.QRNo3.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime3.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName3.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname3.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel3.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents3.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end//case
            else
//*******     case         *******
            if nums = '5' then
            begin
              TDnevnik.QRNo4.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime4.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName4.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname4.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel4.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents4.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end //case
//*******     case         *******
            else
            if nums = '6' then
            begin
              TDnevnik.QRNo5.Caption := nums;
              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime5.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName5.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname5.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel5.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents5.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end//case
            else
//*******     case         *******
            if nums = '7' then
            begin
              TDnevnik.QRNo6.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime6.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName6.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname6.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel6.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents6.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end//case
            else
//*******     case         *******
            if nums = '8' then
            begin
              TDnevnik.QRNo7.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime7.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName7.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname7.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel7.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents7.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end //case
//*******     case         *******
            else
            if nums = '9' then
            begin
              TDnevnik.QRNo8.Caption := nums;
              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime8.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName8.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname8.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel8.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents8.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end//case
            else
//*******     case         *******
            if nums = '10' then
            begin
              TDnevnik.QRNo9.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime9.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName9.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname9.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel9.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents9.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end//case
            else
//*******     case         *******
            if nums = '11' then
            begin
              TDnevnik.QRNo10.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime10.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName10.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname10.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel10.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents10.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end //case
//*******     case         *******
            else
            if nums = '12' then
            begin
              TDnevnik.QRNo11.Caption := nums;
              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime11.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName11.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname11.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel11.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents11.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end;//case

          end;
          if copy(ss,1,1)='b' then //afternoon records
          begin
            nums := IntToStr(num + 1);
//*******     case         *******
            if nums = '1' then
            begin
              TDnevnik.QRNo.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end//case
            else
//*******     case         *******
            if nums = '2' then
            begin
              TDnevnik.QRNo1.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime1.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName1.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname1.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel1.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents1.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end //case
//*******     case         *******
            else
            if nums = '3' then
            begin
              TDnevnik.QRNo2.Caption := nums;
              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime2.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName2.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname2.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel2.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents2.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end//case
            else
//*******     case         *******
            if nums = '4' then
            begin
              TDnevnik.QRNo3.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime3.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName3.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname3.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel3.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents3.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end//case
            else
//*******     case         *******
            if nums = '5' then
            begin
              TDnevnik.QRNo4.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime4.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName4.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname4.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel4.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents4.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end //case
//*******     case         *******
            else
            if nums = '6' then
            begin
              TDnevnik.QRNo5.Caption := nums;
              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime5.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName5.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname5.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel5.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents5.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end//case
            else
//*******     case         *******
            if nums = '7' then
            begin
              TDnevnik.QRNo6.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime6.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName6.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname6.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel6.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents6.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end//case
            else
//*******     case         *******
            if nums = '8' then
            begin
              TDnevnik.QRNo7.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime7.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName7.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname7.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel7.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents7.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end //case
//*******     case         *******
            else
            if nums = '9' then
            begin
              TDnevnik.QRNo8.Caption := nums;
              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime8.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName8.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname8.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel8.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents8.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end//case
            else
//*******     case         *******
            if nums = '10' then
            begin
              TDnevnik.QRNo9.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime9.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName9.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname9.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel9.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents9.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end//case
            else
//*******     case         *******
            if nums = '11' then
            begin
              TDnevnik.QRNo10.Caption := nums;

              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime10.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName10.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname10.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel10.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents10.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end //case
//*******     case         *******
            else
            if nums = '12' then
            begin
              TDnevnik.QRNo11.Caption := nums;
              ur := TDnevnik.qrysifranturnik.FieldByName('ura').AsVariant;
              TDnevnik.QRTime11.Caption := ur;

              st := TDnevnik.qrysifranturnik.FieldByName('sifrastranke').AsString;
              st1 := qryUrnik.FieldByName('sifrastranke').AsString;

              TDnevnik.qrysifrantstrank.FieldByName('sifrastranke').AsString := st;
              TDnevnik.qrySifrantstrank.FindFirst;

              while not TDnevnik.qrySifrantstrank.Eof do
              begin
                 if TDnevnik.qrySifrantstrank.FieldByName('sifrastranke').AsString = st then
                 begin

                   TDnevnik.QRName11.Caption := TDnevnik.qrySifrantstrank.FieldByName('ime').AsString;
                   TDnevnik.QRSurname11.Caption := TDnevnik.qrySifrantstrank.FieldByName('priimek').AsString;

                   TDnevnik.QRTel11.Caption:= TDnevnik.qrySifrantstrank.FieldByName('telFiksni').AsString;
                   TDnevnik.QRComents11.Caption:= TDnevnik.qrySifrantstrank.FieldByName('Opomba').AsString;

                 end;
                 TDnevnik.qrySifrantstrank.Next;
              end;
            end;//case

          end;
          num := strtoint(nums);
      end;
    end;
    end;
    TDnevnik.qrySifranturnik.Next;
  end;
  TDnevnik.qrySifranturnik.free;
  TDnevnik.qrySifrantstrank.free;
  TDnevnik.QuickRep1.Preview;
  TDnevnik.QuickRep1.Free;
end;

yocko
Prispevkov: 127
Pridružen: 26.02.2002 19:44:30

Access Violation

Odgovor Napisal/-a yocko » 19.07.2006 11:17:02

Koda: Izberi vse

TDnevnik.QuickRep1.Free; 
Kje pa kreiraš QuickRep1 če ga na koncu procedure sprostiš?
V drugi rundi izpisa QuickRep1 več ne obstaja, ker si ga sprostil, zato ti tudi ne more prikazati izpisa (Preview)
Zadnjič spremenil yocko, dne 19.07.2006 11:21:20, skupaj popravljeno 1 krat.

JanezZ
Prispevkov: 14
Pridružen: 26.02.2004 02:04:26

Access Violation

Odgovor Napisal/-a JanezZ » 19.07.2006 11:24:06

je vse eno se vedno me daja isto napako tud ce dam jo pod koment :(

a obstaja se kaj drugega ?

JanezZ
Prispevkov: 14
Pridružen: 26.02.2004 02:04:26

Access Violation

Odgovor Napisal/-a JanezZ » 19.07.2006 11:29:32

Preview kaze prvic samo ce bi zelel spet da bi kazalo mi ne dela vec in zato nevem kaj ne gre tu vredi kr ce nebi delalo od zacetka bo razumljivo samo dela za prvic iz prvi RUN in samo da grem van iz reporta in recimo kliknem kaj drugega na Formu in pol pridem nazaj za print mi ne dela in daja uni error

yocko
Prispevkov: 127
Pridružen: 26.02.2002 19:44:30

Access Violation

Odgovor Napisal/-a yocko » 19.07.2006 12:51:01

Janez, saj tudi query-je sprostiš na koncu procedure, zato jih v naslednji rundi tiskanja več nimaš, saj jih nikjer ne ustvariš s Create.

Koda: Izberi vse

TDnevnik.qrySifranturnik.free;
TDnevnik.qrySifrantstrank.free;
Če si Querije vrgel na formo, jih ni treba sproščati s free na koncu procedure, ker jih za naslednjo rundo printanja tako več ne boš imel!
Ali pa jih na začetku procedure kreiraj dinamično s Create in jih na koncu procedure potem lahko sprostiš s Free.

Odloči se za prvi ali drugi koncept.
Zadnjič spremenil yocko, dne 19.07.2006 12:53:43, skupaj popravljeno 1 krat.

JanezZ
Prispevkov: 14
Pridružen: 26.02.2004 02:04:26

Access Violation

Odgovor Napisal/-a JanezZ » 19.07.2006 13:24:17

ydaj ki sm dal jih pod koment samo da konca prvi print in v sredi loadanja glavni Form mi daja ACCESS VIOLATION B018B00C READ OF ADDRESS B018B00C

Odgovori