Skip to main content

Reports Catalog

Source: report windows across all libraries (inventory.json window titles and comments), the dedicated report libraries clmrpt, cobrarpt, enrolrpt, the reporting subsystem in reprint (n_cst_reportobject, w_reprint*), and the report_hist table writers.

Reporting subsystem: how report history works

The report object and report_hist

reprint/n_cst_reportobject ("Master object for loading reports into the report_hist table") is the shared engine for durable, reprintable output:

  • A report is a DataWindow object plus up to 20 retrieval parameters (of_setdataobject, of_setparms, ue_retrieve).
  • of_insert_into_report_hist inserts a REPORT_HIST row carrying: report_sys_key, report_type_cd, report_desc, report_data (blob), orig_run_dt, requesting user and request date, group_id, check_number, worksheet_number, payee_sys_key, recipient id/type, batch_id, dw_object (the layout name needed to re-render), format_type, and reissue_days.
  • The stored blob is either the rendered report (PSR format, of_convertpsrtoblob) or just the data rows (DATA format, of_convertdatatoblob), selected by of_converttoblob(..., as_Format) — with DATA, the saved dw_object re-renders the rows on reprint.
  • A parallel of_insert_into_claim_letters_hist records claim letters in claim_letters_hist; claims/n_reportobject_claims_letters specializes the object for claims letters.

Sequence keys come from the database (report_hist_seq.nextval — e.g. enroll/w_enroll_hipaa_generate line ~502). Some producers write the row and then UPDATEBLOB report_hist SET report_data = ... in a second step (HIPAA and custom termination letter generation).

  • reprint/w_reprint ("print queue manager", DataWindow d_reprint over report_hist joined to user_info) prints queued output; reprint/n_cst_reprint_func re-instantiates stored blobs via a temp file and prints them (of_printpsr, of_printdata).
  • reprint/w_reprint_maintenance searches REPORT_HIST with a dynamically built filter (report type wildcard, internal vs. external payee, group, check number) and retrieves the blob for view/reprint (lines ~200-256).
  • After printing, producers set prt_flg = 'Y' on the row (e.g. enroll/w_enroll_hipaa_print line ~346), so "unprinted only" filters work.
  • Check/EOB re-prints use the chkrundw library DataWindows (d_checkrun_eob*, d_checkrun_claim_lines, d_checkrun_claim_pricing) via clmprint/n_check_copy and reprint/w_reprint_maintenance; reprint/w_reprint_check_recon covers check reconciliation output.
  • Group-specific print distribution (how many copies of what go to which recipient) is maintained in reprint/w_group_print_distribution.
  • system/w_letter_on_cd retrieves archived claims letters "stored on CD" via the same reprint objects.

Billing report queue (separate store)

Billing runs write their outputs to a dedicated bill_reports table; users view/print them from billing/w_bill_queue ("Billing Reports View and Print", d_bill_bill_reports_list, with an unprinted-only checkbox and per-run delete DELETE FROM bill_reports WHERE bill_def_sys_key = ... AND bill_run_sys_key = ...).

Batch report registry

homersys/w_batch_reports maintains the batch_reports table: report_cd, report_name, report_dw, report_parameter_window, report_type, allow_run_events, allow_times (homersys/d_batch_reports). This is a registry of reports that can be run by a batch mechanism with event- or time-based permissions; reprint/w_parameterwindow is the "Generic parameter window for use with n_cst_reportobject" that such registered reports name.

Catalog by business area

Names below are the window objects (the operative report definitions are the DataWindows each window retrieves). Purposes are taken from source comments and window titles; where blank in source, the name is descriptive enough.

Claims (clmrpt, plus clmforms, sales)

Report windowPurpose / titleKey selection criteria
w_rpt_group_claim_bendefsDetailed Claims Listing by Benefit Definitiongroup, benefit definition
w_rpt_group_claim_benrulesDetailed Claims Listing by Benefit Rule Typegroup, rule type
w_rpt_group_selected_accumsAccumulators by Membergroup, accumulator selection
w_rpt_member_accum_rulemaxMember Accumulators by Benefit Rulemember (embedded member search)
w_clmrpt_accum_rptMember Accumulator Listing for groupsgroup
w_clmrpt_member_accum_searchMember accumulator display by member criteriamember criteria
w_claimrpt_large_claim_reportLarge claim reportthresholds
w_clm_claimed_amt_morethanClaims with claimed amount above a thresholdamount threshold
w_clmrpt_claims_older_than_90_daysClaims older than 90 daysgroup or all
w_clmrpt_open_messagesClaims with open messagesstatus
w_clm_message_status_summaryClaim message status summary
w_clmrpt_status_countCount of claims in each status
w_clmrpt_outstanding_adjustmentsClaims with outstanding adjustmentsgroup
w_clmrpt_outstanding_refundsOutstanding refundsgroup or all
w_clmrpt_outbound_aging_tvClaims - Outbound Aging (treeview)age
w_clmrpt_outbound_edi_older_than_10_daysOutbound EDI claims with no response after 10 daysage threshold
w_no_group_id_fixClaims with no Group ID assigned
w_nobs_group_rptGroup report (NOBS)group
w_cigna_p4pCigna Pay for Performance reporting
w_ppaca_lettersPPACA letters (report picked from drop-down, per claim)report name, claim id
w_state_report (homersys)Members and claims for specified states over timestates, date range
clmforms/w_claim_status_listingClaim status listing
sales/w_sales_rpt_group_claim_detailDetailed Claims Listing by group, claim type, paid datesgroup, claim type, paid dates
sales/w_sales_report_wizard / w_sales_report_sheetReporting wizard (parameterized report family)wizard-driven

Enrollment / membership (enrolrpt, enroll, enrollutils)

Report windowPurpose / titleKey selection criteria
w_annlstmtAnnual employee benefit statement generationgroup, member
w_annlstmt_option_maintenanceMaintain annual statement options
w_census_rpt_args_sheet / w_census_rpt_displayCensus reportscensus parameters
w_enrollrpt_deps_over_ageDependents over age NNage
w_enrollrpt_error_rptsEnrollment error reports (e.g. single member with multi-person coverage)error type
w_hb1_reportHB1 Member Report
w_dep_auditDependent Eligibility Audit (also creates Matria claim files)group
w_mmo_auditMMO audit
enroll/w_hipaa_cert_reportRun/print HIPAA certificate reportmember/date
enroll/w_notes_hipaa_report_viewHIPAA notes report
enrollutils/w_fsa_noticesFlexible Spending Account notices and summary listingsplan year
enrollutils/w_fsa_depcare_tax_statementsFSA dependent-care tax statementsyear
client/w_client_census_rpt_args_sheet / _displayClient census reportsclient

COBRA (cobrarpt, cobra)

Report windowPurpose / titleKey selection criteria
w_cobrarpt_select_criteria / w_cobrarpt_displayCOBRA Reports (criteria then display)report type, criteria
w_cobra_printlabel_selectCOBRA mailing label selection
cobra/w_cobra_printqueueMain print queue for COBRA lettersletter type, group
cobra/w_cobra_letter_errorsCOBRA letter generation errors

Funding / banking (funding)

Report windowPurpose / titleKey selection criteria
w_fund_funding_statusFunding Status Reportgroup, period
w_fund_fund_page_listingFund Page Listing Report (setup completeness)
w_fund_negative_balanceNegative balance report (screen version)
w_fund_reconcile_reportBank Reconciliation reportaccount, period
w_fund_outstanding_checksOutstanding checksaccount
w_fund_check_process_err_rptFund check processing error reportrun
w_fund_wdi_period_rpt / w_fund_wdi_period_as_modified_rptWDI period reports (as billed / as modified)period
w_fund_delinquent_claims_summary / _detailDelinquent claims fundinggroup
w_withholding_reportsWithholding claims and census reports by statestates, date range

Billing (billing)

Report windowPurpose / titleKey selection criteria
w_bill_queueBilling Reports View and Print (bill run outputs)bill definition, run, unprinted flag
w_bill_reportsBilling Exception Reportrun
w_billrpt_flex_chargesFlex Charge Billing reportperiod
w_billprt_disbursement_division_summaryDisbursement division summaryrun

The billfunc library holds the d_billprt_* print DataWindow family (charge summaries, disbursement summaries, mailing pages, rate details).

Utilization / case management (um_cm, um_main)

Report windowPurpose / titleKey selection criteria
um_cm/w_um_cm_potentials_reportCM Potentials Reportcriteria
um_cm/w_um_management_casesUM management cases report
um_cm/w_cm_billingCM billing reports and maintenanceperiod
um_main/w_cm_possible_rptPossible CM claim report
um_main/w_um_entities_reportEntity reportentity
um_main/w_umclaim_rptsUM claim reports

Stop-loss (stoploss)

Report windowPurpose / titleKey selection criteria
w_sl_spec_clm_listingSpecific Stoploss Claims Listingmember (embedded search), contract
w_sl_variable_clm_listingVariable date-range stop-loss claims listingmember, date range
w_sl_specific_rptSpecific stop-loss reportcontract

Provider / network (provider), system and security

Report windowPurpose / titleKey selection criteria
provider/w_provider_rpt_hcn_pricing_methodsHCN pricing methods reportnetwork
provider/w_hms_report / w_hms_reporting / w_hms2HMS reporting extractsperiod
homersys/w_edi_reportEDI submitted by groupgroup
homersys/w_pridecare_bill_dataPridecare bill data report
homersys/w_release_notesRelease notes viewerversion
app_sec/w_sec_report1Security report
idcard/w_enroll_idcard_usfhpUSFHP ID card request listing and lettersrequest batch

Requirements

  • RPT-1 Reports and printed documents that may need reissue (checks, EOBs, worksheets, letters, statements) shall be persisted at generation time as a report-history record holding the rendered output (or its data plus the layout identifier), report type, description, original run date, requesting user, and business keys (group, check number, worksheet number, payee, recipient, batch) (reprint/n_cst_reportobject::of_insert_into_report_hist).
  • RPT-2 Persisted output shall support two storage formats — fully rendered, and data-only re-rendered through the saved layout — chosen per report (n_cst_reportobject::of_converttoblobPSR vs DATA).
  • RPT-3 Users shall be able to search report history by report type, group, check number, payee class (internal/external) and date, preview the stored output, and reprint it (reprint/w_reprint_maintenance, reprint/w_reprint).
  • RPT-4 Each history record shall track whether it has been printed (prt_flg), and print queues shall support an "unprinted only" view (enroll/w_enroll_hipaa_print, billing/w_bill_queue).
  • RPT-5 Claim letters shall additionally be recorded in a claim-letter history keyed to the claim (n_cst_reportobject::of_insert_into_claim_letters_hist, claims/n_reportobject_claims_letters).
  • RPT-6 Billing-run outputs shall be queued in a billing report store and be viewable, printable, and deletable per bill definition and run (billing/w_bill_queue).
  • RPT-7 The system shall keep a maintainable registry of batch-runnable reports naming the report code, layout, parameter-collection screen, type, and whether event-triggered and/or time-triggered execution is allowed (homersys/w_batch_reports, batch_reports table).
  • RPT-8 Per-group print distribution rules (recipients/copies) shall be maintainable and honored when printing report batches (reprint/w_group_print_distribution).

Open questions

  • The full report inventory ultimately lives in DataWindow objects (2,110 in analysis/datawindows.json); the tables above list the user-facing report windows. A per-DataWindow layout inventory should be generated per module during migration.
  • batch_reports.allow_run_events / allow_times imply a scheduler/runner that is not in the client source (see Batch Processing open questions).
  • Several report windows have neither title nor comment (e.g. clmrpt/w_nobs_group_rpt, enrolrpt/w_mmo_audit); purposes need user confirmation.
  • system/w_letter_on_cd implies an offline letter archive on optical media; confirm whether that archive must be readable post-migration.