Report expert needed
kljinnn
Member Posts: 23
hi experts,
I have a little problem. A made a form to count the number of dossiers for each regios but for some records it works fine and for other it doesnt.
Here's my code:
aantal := 0;
aantalnt6minder := 0;
aantal6minder := 0;
aantalnt6meer := 0;
aantal6meer := 0;
recDossierPR.RESET;
recDossierPR.SETCURRENTKEY(RegioID);
recDossierPR.SETFILTER(RegioID,'=%1', recRegio.RegioID);
IF recDossierPR.FIND('-') THEN
REPEAT
aantal := aantal + 1;
UNTIL recDossierPR.NEXT = 0;
recDossier.RESET;
recDossier.SETCURRENTKEY(DossierID);
recDossier.SETFILTER(DossierID,'=%1', recDossierPR.DossierID);
IF recDossier.FIND('-') THEN REPEAT
IF DATE2DMY(recDossier.Opstartdatum,3) <= 2005 THEN BEGIN
CLEAR(recJongere);
recJongere.RESET;
recJongere.SETCURRENTKEY(JongereID);
recJongere.SETFILTER(JongereID, '=%1', recDossier.JongereID);
IF recJongere.FIND('-') THEN BEGIN
IF (DATE2DMY(WORKDATE,3) - DATE2DMY(recJongere.Geboortedatum,3)) <18 THEN BEGIN
aantalnt6minder := aantalnt6minder + 1;
END ELSE BEGIN
aantalnt6meer := aantalnt6meer + 1;
END
END
END ELSE BEGIN
CLEAR(recJongere);
recJongere.RESET;
recJongere.SETCURRENTKEY(JongereID);
recJongere.SETFILTER(JongereID, '=%1', recDossier.JongereID);
IF recJongere.FIND('-') THEN BEGIN
IF (DATE2DMY(WORKDATE,3) - DATE2DMY(recJongere.Geboortedatum,3)) <18 THEN BEGIN
aantal6minder := aantal6minder + 1;
END ELSE BEGIN
aantal6meer := aantal6meer + 1;
END
END
END
UNTIL recDossier.NEXT = 0;
can someone tell me whats wrong,
thanks in advance
I have a little problem. A made a form to count the number of dossiers for each regios but for some records it works fine and for other it doesnt.
Here's my code:
aantal := 0;
aantalnt6minder := 0;
aantal6minder := 0;
aantalnt6meer := 0;
aantal6meer := 0;
recDossierPR.RESET;
recDossierPR.SETCURRENTKEY(RegioID);
recDossierPR.SETFILTER(RegioID,'=%1', recRegio.RegioID);
IF recDossierPR.FIND('-') THEN
REPEAT
aantal := aantal + 1;
UNTIL recDossierPR.NEXT = 0;
recDossier.RESET;
recDossier.SETCURRENTKEY(DossierID);
recDossier.SETFILTER(DossierID,'=%1', recDossierPR.DossierID);
IF recDossier.FIND('-') THEN REPEAT
IF DATE2DMY(recDossier.Opstartdatum,3) <= 2005 THEN BEGIN
CLEAR(recJongere);
recJongere.RESET;
recJongere.SETCURRENTKEY(JongereID);
recJongere.SETFILTER(JongereID, '=%1', recDossier.JongereID);
IF recJongere.FIND('-') THEN BEGIN
IF (DATE2DMY(WORKDATE,3) - DATE2DMY(recJongere.Geboortedatum,3)) <18 THEN BEGIN
aantalnt6minder := aantalnt6minder + 1;
END ELSE BEGIN
aantalnt6meer := aantalnt6meer + 1;
END
END
END ELSE BEGIN
CLEAR(recJongere);
recJongere.RESET;
recJongere.SETCURRENTKEY(JongereID);
recJongere.SETFILTER(JongereID, '=%1', recDossier.JongereID);
IF recJongere.FIND('-') THEN BEGIN
IF (DATE2DMY(WORKDATE,3) - DATE2DMY(recJongere.Geboortedatum,3)) <18 THEN BEGIN
aantal6minder := aantal6minder + 1;
END ELSE BEGIN
aantal6meer := aantal6meer + 1;
END
END
END
UNTIL recDossier.NEXT = 0;
can someone tell me whats wrong,
thanks in advance
0
Comments
-
Hi
Try it with the following coderecJongere.RESET; recJongere.SETCURRENTKEY(JongereID); recDossier.RESET; recDossier.SETCURRENTKEY(DossierID); recDossierPR.RESET; recDossierPR.SETCURRENTKEY(RegioID); recDossierPR.SETFILTER(RegioID,'=%1', recRegio.RegioID); IF recDossierPR.FIND('-') THEN REPEAT aantal := aantal + 1; recDossier.SETFILTER(DossierID,'=%1', recDossierPR.DossierID); IF recDossier.FIND('-') THEN REPEAT recJongere.SETFILTER(JongereID, '=%1', recDossier.JongereID); IF recJongere.FIND('-') THEN repeat IF DATE2DMY(recDossier.Opstartdatum,3) <= 2005 THEN BEGIN IF (DATE2DMY(WORKDATE,3) - DATE2DMY(recJongere.Geboortedatum,3)) <18 THEN aantalnt6minder := aantalnt6minder + 1 ELSE aantalnt6meer := aantalnt6meer + 1; end else IF (DATE2DMY(WORKDATE,3) - DATE2DMY(recJongere.Geboortedatum,3)) <18 THEN aantal6minder := aantal6minder + 1 ELSE aantal6meer := aantal6meer + 1; until recJongere.next = 0; UNTIL recDossier.NEXT = 0; UNTIL recDossierPR.NEXT = 0;
Regards
Albert0 -
thanks albert, but I still have another problem.
Each Regio has 2 Dossiers at the moment. So when I run the report he has to show:
RegioID 1
DossierID - JongereID
1 - 1
2 - 2
RegioID 2
DossierID - JongereID
3 - 3
4 - 4
but he doesnt show that. the thing I get now is:
DossierID - JongereID
1 - 0
2 - 2
RegioID 2
DossierID - JongereID
3 - 2
4 - 4
I really dont know whats wrong. This is what i get atm:
DataItem Name
tblDossierPerRegio <tblDossierPerRegio>
aftergetrecord is the place where I used your code
and the fields are made in tblDossierPerRegio, Body(6)
I really hope someone call help [-o< , especially you Albert 'cause you helped my teammate also =D>0 -
Hi
Just to check please confirm the following
DataItem
RecRegio
->ResDossier (Indent by 1) Linked by Regio ID to RecRegio
-->RecJongere (Indent by 2) linked by Dossier ID to RecDossier
RecRegio grouped by Regio ID
RecDossier Groupe by Dossier ID
Set Group header for RecRegio
Set Group footer for RecDossier
in OnPreDataItem section of RecDossier and RecJongere
CURRREPORT.CREATETOTALS(aantalnt6minder,aantal6meer);
Put this code in OnAfterGetRecord of RecJongereIF DATE2DMY(recDossier.Opstartdatum,3) <= 2005 THEN BEGIN IF (DATE2DMY(WORKDATE,3) - DATE2DMY(recJongere.Geboortedatum,3)) <18 THEN aantalnt6minder := 1 ELSE aantalnt6meer := 1; end else IF (DATE2DMY(WORKDATE,3) - DATE2DMY(recJongere.Geboortedatum,3)) <18 THEN aantal6minder := 1 ELSE aantal6meer := 1;
Put the variables aantalnt6minder and aantal6meeron the RecDossier Group footer
Hope this helps
Albert0
Categories
- All Categories
- 75 General
- 75 Announcements
- 66.7K Microsoft Dynamics NAV
- 18.8K NAV Three Tier
- 38.4K NAV/Navision Classic Client
- 3.6K Navision Attain
- 2.4K Navision Financials
- 116 Navision DOS
- 851 Navision e-Commerce
- 1K NAV Tips & Tricks
- 772 NAV Dutch speaking only
- 611 NAV Courses, Exams & Certification
- 2K Microsoft Dynamics-Other
- 1.5K Dynamics AX
- 253 Dynamics CRM
- 103 Dynamics GP
- 6 Dynamics SL
- 1.5K Other
- 991 SQL General
- 383 SQL Performance
- 34 SQL Tips & Tricks
- 28 Design Patterns (General & Best Practices)
- Architectural Patterns
- 9 Design Patterns
- 4 Implementation Patterns
- 53 3rd Party Products, Services & Events
- 1.6K General
- 1K General Chat
- 1.6K Website
- 77 Testing
- 1.2K Download section
- 23 How Tos section
- 249 Feedback
- 12 NAV TechDays 2013 Sessions
- 13 NAV TechDays 2012 Sessions