Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Report Writers
Message
General information
Forum:
Visual FoxPro
Category:
Third party products
Title:
Miscellaneous
Thread ID:
00095669
Message ID:
00096116
Views:
22
>>>>>The general flow of the report is like this:
>>>>>+------------ provider id (break)
>>>>>|
>>>>>| +------Address id (break)
>>>>>| | +---TaxId
>>>>>| | | (detail)
>>>>>| | +---
>>>>>| +------
>>>>>|
>>>>>| +-----TaxId WHERE EMPTY( dm_AddrId)
>>>>>| | (detail)
>>>>>| +-----
>>>>>|
>>>>>| +-----Spec_code
>>>>>| | (detail)
>>>>>| +-----
>>>>>|
>>>>>| +-----State_lic
>>>>>| | (detail)
>>>>>| +-----
>>>>>|
>>>>>+------------
>>>>>
>>>>>I'm just gettin' warmed up. Wanna know more... :)
>>>>>
>>>>> ...kt
>>>>
>>>>So far, i don't see problems. You collect one-many tables to one cursor with >ProviderID,AddressID,TaxID ... Now you can just order this cursor by this 3 >fields providing that empty AddressID will go last.
>>>
>>>Two problems with this approach. 1) I think that after I get the final address break the detail lines will print all of the TaxId's under one blank address, correct? I need to print each TaxId as if it has a seperate address. 2) for brevity sake (well, I did try anyway) I didn't detail the other parts of the report. It also has to print provider specialty codes and state licenses in a seperate section/format. Using your approach would associate specialties and licenes with a particular address, not with at the provider level. In other words the specialties and licenses would print each time an address prints.
>>
>>Hey Keith,
>>Ed has you on the right track... I have a reporting sytem with over 200 >reports and I've beat myself up with scenarios like this but always managed to >make them work with regular Report Writer. Rule on Thumb on your latest >question - Whenever you think you need "a separate section" you can usually >put fields in Header/Footer Band to make it work. So for this, I'd put >Provider codes and state lincense info in the header for your Provider group. >=D) What's next?
>
>Roxanne, I hope I don't sound argumentative, but I'm really trying to
>understand.
>
>Again, I THINK, that a situation like this:
>
>+------------ provider id (break)
>|
>| +------Address id (break)
>| | +---TaxId
>| | | (detail)
>| | | +-----TaxId WHERE EMPTY( dm_AddrId)
>| | | | (detail)
>| | | | +-----Spec_code
>| | | | | (detail)
>| | | | +-----
>| | | +-----
>| | +------------
>| +------------
>+------------
>
>Where the breaks are nested would be fairly simple, but how
>do I loop through linked tables printing different detail lines
>and headers?

OK now your getting to the tough stuff. The way I handle this is by relating my different tables together with SET RELATION, and this is usually the worst part to figure out. Usually I setup a temporary table that drives the report and contains mostly key fields that matchup to my report group breaks. Often these key fields are simply something I whip out to make the report work. Then I relate my other tables to this driving table, with the other tables containing the data for the different sections or different detail lines. Then my detail band in report form usually ends up being several lines of fields, and each line typically has the same PRINT WHEN condition. I also usually end up putting in a field in footer or detail that only contains " " with another PRINT WHEN condition to simulate a blank line between my different sections to make it look pretty.

Since we're getting into stuff now that is hard visualize from written description, I'll dig up my ugliest report that uses these techniques and email it to you this evening with some sample data so you can see what I mean. (might help to make sure you UT profile email address is correct awhile) I know this probably seems an awful task, but I'm sure you can manipulate the Report Writer to do it. And if it's any encouragement, it took me well over a year of doing heavy duty reporting to master this kind of stuff.
Roxanne M. Seibert
Independent Consultant, VFP MCP

Code Monkey Like Fritos
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform