Class: cReportDS
Class Hierarchy:
cObject

cReport


cReportDSDirect Known Subclasses:
cBasicReport, Class Definition
Properties
Integer
Auto_Fill_State
Required not used
Integer
Deferred_State
When used with DDs, deferred_state will really not work properly and
should therefore be avoided.
makes less traffic
Integer
Server
data_set
Functions and Procedures

AddReportsToServer()
See notes in DoRunReport. Added in 11.1 Attaches all reports to all DDs just once in outer report

Construct_Object()
Integer Img#
integer
DoRunReport()
Augmented to add this object from the Data_set's user interface

End_Construct_Object()
Procedure ReadByRowId RowId riRec
Handle hoDD
integer iFile
Get Server to hoDD
If not hoDD begin
Forward send ReadByRowId riRec
end
Else Begin
Get Main_File of hoDD to iFile
If (Deferred_state(self)) begin
Send ReadbyRowId of hoDD iFile riRec // if deferred
end
Else Begin
Send FindByRowId of hoDD iFile riRec // if not deferred
end
End
End_procedure
//
// Procedure : Read_By_RecNum
// Augmented to direct read to server
//
Procedure Read_by_RecNum Integer Rec#
Integer srvr# File#
Get Server to Srvr#
If Srvr# eq 0 Forward send Read_by_Recnum Rec#
Else Begin
Get Main_File of Srvr# to File#
If (Deferred_state(self)) ;
Send Read_by_Recnum to srvr# File# rec# // if deferred
Else Send Find_by_Recnum to srvr# File# rec# // if not deferred
End
End_procedure
**Procedure rebuild_constraints
** Integer srvr#
** Get server to srvr#
** if srvr# eq 0 forward send rebuild_constraints
** Else Begin
** send rebuild_constraints to srvr#
** if (Constrain_by_Report_State(self)) Send constrain
** End
**End_procedure
**
**Procedure constrain
** integer srvr# file# Prnt_srvr#
** Get server to srvr#
** If Srvr# eq 0 Forward send constrain // this'll set object relates to constraint
** else begin
** if (pbChildReport(self)) begin
** delegate get Server to Prnt_srvr#
** CONSTRAIN (Main_File(srvr#)) RELATES TO ;
** (if(prnt_srvr#=0,;
** Main_File(Parent(self)), Main_file(Prnt_Srvr#)))
** end
** end
**End_Procedure
Augment to set Report Object's main_file if server exists
integer
End_Report(integer rpt_Status)
Augmented to remove this object from the Data_set's user interface
See notes in DoRunReport about 11.1 change

Entry_Update()
Update from report to datafile.

Find_Init()
Procedure: Find_Init
set up this file for finding... This clears the needed buffers
Integer
Find_Rec()
Augment to find record in Data_set if Server exists

ReadByRowId(RowId riRec)

Refresh()
Display - required

RemoveReportsFromServer()
See notes in DoRunReport. Added in 11.1 detaches all reports from all DDs just once in outer report

Request_Delete()
Supports deletes. Should be called in body

Request_Save()
supports saves
integer
Validate_items(integer fg)
called during request_validate to DDO
References (1):