Hi Again:

thanks to those who sent me responses on my first post. I'll try to explain a 
bit better. There
are several parameters that are passed by the user. Each of the parameters that 
are being passed,
may have a NULL value, or an actual numerical value. The parameters filter a 
large report down a
to small amount of records. With that being said, the problem I'm encountering 
is that I can't
seem to insert a conditional (whether it be a CASE statement or an IF 
statement) in the middle of
the SELECT statement. I'm not sure if the problem stems from using the ROWTYPE 
variable notation.
Here is the complete code. It works as long as a NULL value doesn't get passed.

To show what I mean, I'd like to insert the conditional around this line (23rd 
from the bottom):

f.id = pid.specific_location_cid AND f.long_desc = $7

-- Function: sp_hirs_a_01dd(integer, character varying, integer, character 
varying, character
varying, character varying, character varying)

-- DROP FUNCTION sp_hirs_a_01dd(integer, character varying, integer, character 
varying, character
varying, character varying, character varying);

CREATE OR REPLACE FUNCTION sp_hirs_a_01dd(integer, character varying, integer, 
character varying,
character varying, character varying, character varying)
  RETURNS SETOF rec_dd_holder AS
$BODY$
DECLARE
r rec_dd_holder%rowtype;
BEGIN
FOR r IN 

SELECT  DISTINCT(pi.serial_number) AS "Incident ID",
        to_char(pi.incident_date,'Mon-dd-yyyy') AS "Incident date",
        to_char(pi.date_created,'Mon-dd-yyyy') AS "Report Date",

        CASE    
                WHEN EXTRACT ( MONTH FROM pi.incident_date ) = 1 THEN 1 
                WHEN EXTRACT ( MONTH FROM pi.incident_date ) = 2 THEN 1 
                WHEN EXTRACT ( MONTH FROM pi.incident_date ) = 3 THEN 1
                WHEN EXTRACT ( MONTH FROM pi.incident_date ) = 4 THEN 2 
                WHEN EXTRACT ( MONTH FROM pi.incident_date ) = 5 THEN 2 
                WHEN EXTRACT ( MONTH FROM pi.incident_date ) = 6 THEN 2 
                WHEN EXTRACT ( MONTH FROM pi.incident_date ) = 7 THEN 3 
                WHEN EXTRACT ( MONTH FROM pi.incident_date ) = 8 THEN 3 
                WHEN EXTRACT ( MONTH FROM pi.incident_date ) = 9 THEN 3 
                WHEN EXTRACT ( MONTH FROM pi.incident_date ) = 10 THEN 4 
                WHEN EXTRACT ( MONTH FROM pi.incident_date ) = 11 THEN 4 
                WHEN EXTRACT ( MONTH FROM pi.incident_date ) = 12 THEN 4 
        END AS "Quarter",

        pf.name  AS "Facility",
        pl.name  AS "General Location",
        f.long_desc  AS "Specific Location", 

        b.long_desc AS "Status",
        pi.person_age AS "Age",

        CASE
                WHEN pi.gender_code_id ='31' THEN 'M'
                WHEN pi.gender_code_id ='32' THEN 'F'
                ELSE NULL
                END
        AS "Gender",
        
        to_char(pi.incident_date,'hh24:mm') AS "Time",

        pc.long_desc AS "Incident Type", 
        a.long_desc AS "Incident Subtype",

        CASE    WHEN pid.fallscf_behavoiur_val ='t' THEN 'Behaviour. '  WHEN 
pid.fallscf_behavoiur_val ='f'
THEN '' END ||
        CASE    WHEN pid.fallscf_bowel_bladder_val ='t' THEN 'Bowel/Bladder 
Problem.' WHEN
pid.fallscf_bowel_bladder_val ='f' THEN '' END ||
        CASE    WHEN pid.fallscf_comm_information_val  ='t'  THEN 
'Communication/Information. ' WHEN
pid.fallscf_comm_information_val = 'f' THEN '' END ||
        CASE    WHEN pid.fallscf_env_condition_val  ='t'  THEN 'Environmental 
Conditions. '     WHEN
pid.fallscf_env_condition_val = 'f' THEN '' END ||
        CASE    WHEN pid.fallscf_eq_malfunction_val  ='t'  THEN 'Equipment 
Malfunction. '       WHEN
pid.fallscf_eq_malfunction_val = 'f' THEN '' END || 
        CASE    WHEN pid.fallscf_eq_supplies_val  ='t'  THEN 
'Equipment/Supplies Unavailable. ' WHEN
pid.fallscf_eq_supplies_val = 'f' THEN '' END ||
        CASE    WHEN pid.fallscf_visitor_val  ='t'  THEN 'Family/Visitor 
Assisting. '   WHEN
pid.fallscf_visitor_val = 'f' THEN '' END ||
        CASE    WHEN pid.fallscf_footwear_val  ='t'  THEN 'Inappropriate 
Footwear. '    WHEN
pid.fallscf_footwear_val = 'f' THEN '' END || 
        CASE    WHEN pid.fallscf_instructionsnotfollowed_val  ='t'  THEN 
'Instructions Not Followed. '  WHEN
pid.fallscf_instructionsnotfollowed_val = 'f' THEN '' END ||
        CASE    WHEN pid.fallscf_interference_val  ='t'  THEN 
'Interference/Interruption. '     WHEN
pid.fallscf_interference_val = 'f' THEN '' END ||
        CASE    WHEN pid.fallscf_material_val  ='t'  THEN 'Material/Liquid on 
Floor. '  WHEN
pid.fallscf_material_val = 'f' THEN '' END || 
        CASE    WHEN pid.fallscf_medication_val  ='t'  THEN 'Medication. '      
WHEN pid.fallscf_medication_val =
'f' THEN '' END ||
        CASE    WHEN pid.fallscf_overreaching_val  ='t'  THEN 'Overreaching. '  
WHEN
pid.fallscf_overreaching_val = 'f' THEN '' END ||
        CASE    WHEN pid.fallscf_physical_cond_val  ='t'  THEN 
'Physical/Medical Condition. '   WHEN
pid.fallscf_physical_cond_val = 'f' THEN '' END ||
        CASE    WHEN pid.fallscf_policy_val  ='t'  THEN 'Policy/Procedure. '    
WHEN pid.fallscf_policy_val =
'f' THEN '' END ||
        CASE    WHEN pid.fallscf_substance_val  ='t'  THEN 'Suspected 
Substance/Alcohol Use. '  WHEN
pid.fallscf_substance_val = 'f' THEN '' END || 
        CASE    WHEN pid.fallscf_unexpectmovement_val  ='t'  THEN 'Unexpected 
Movement. '       WHEN
pid.fallscf_unexpectmovement_val = 'f' THEN '' END ||
        CASE    WHEN pid.fallscf_other_val  ='t'  THEN 'Other'  WHEN 
pid.fallscf_other_val = 'f' THEN '' END
||
                
        CASE    WHEN pid.vartreatcf_body_mechanics_val  ='t'  THEN 'Body 
Mechanics. '   WHEN
pid.vartreatcf_body_mechanics_val = 'f' THEN '' END || 
        CASE    WHEN pid.vartreatcf_calculation_val  ='t'  THEN 'Calculation. ' 
WHEN
pid.vartreatcf_calculation_val = 'f' THEN '' END ||
        CASE    WHEN pid.vartreatcf_chart_doc_val  ='t'  THEN 'Chart 
Documentation. '   WHEN
pid.vartreatcf_chart_doc_val = 'f' THEN '' END ||
        CASE    WHEN pid.vartreatcf_communication_val  ='t'  THEN 
'Communication/Information. ' WHEN
pid.vartreatcf_communication_val = 'f' THEN '' END || 
        CASE    WHEN pid.vartreatcf_computer_probl_val  ='t'  THEN 'Computer 
Problems. '        WHEN
pid.vartreatcf_computer_probl_val = 'f' THEN '' END ||
        CASE    WHEN pid.vartreatcf_dispensing_admi_val  ='t'  THEN 
'Dispensing/Administration. '       WHEN
pid.vartreatcf_dispensing_admi_val = 'f' THEN '' END ||
        CASE    WHEN pid.vartreatcf_env_conditions_val  ='t'  THEN 
'Environmental Conditions. ' WHEN
pid.vartreatcf_env_conditions_val = 'f' THEN '' END ||          
        CASE    WHEN pid.vartreatcf_eq_supplies_val  ='t'  THEN 
'Equipment/Supplies. '  WHEN
pid.vartreatcf_eq_supplies_val = 'f' THEN '' END || 
        CASE    WHEN pid.vartreatcf_instr_notfollowed_val  ='t'  THEN 
'Instructions Not Followed. '     WHEN
pid.vartreatcf_instr_notfollowed_val = 'f' THEN '' END ||
        CASE    WHEN pid.vartreatcf_interference_val  ='t'  THEN 
'Interference/Interruption. '  WHEN
pid.vartreatcf_interference_val = 'f' THEN '' END ||
        CASE    WHEN pid.vartreatcf_labelling_val  ='t'  THEN 'Labeling. '      
WHEN pid.vartreatcf_labelling_val
= 'f' THEN '' END || 
        CASE    WHEN pid.vartreatcf_medic_notlocked_val  ='t'  THEN 'Medication 
Not Locked. '   WHEN
pid.vartreatcf_medic_notlocked_val = 'f' THEN '' END ||
        CASE    WHEN pid.vartreatcf_medic_packaging_val  ='t'  THEN 'Medication 
Packaging. '    WHEN
pid.vartreatcf_medic_packaging_val = 'f' THEN '' END ||
        CASE    WHEN pid.vartreatcf_namesound_lookalike_val  ='t'  THEN 'Name 
Sound/Look Alike. '       WHEN
pid.vartreatcf_namesound_lookalike_val = 'f' THEN '' END || 
        CASE    WHEN pid.vartreatcf_order_requisition_val  ='t'  THEN 
'Order/Requisition. '     WHEN
pid.vartreatcf_order_requisition_val = 'f' THEN '' END ||
        CASE    WHEN pid.vartreatcf_patient_ident_missing_val  ='t'  THEN 
'Patient Identification Missing. '
WHEN pid.vartreatcf_patient_ident_missing_val = 'f' THEN '' END || 
        CASE    WHEN pid.vartreatcf_patient_registration_error_val  ='t'  THEN 
'Patient Registration Error.
'       WHEN pid.vartreatcf_patient_registration_error_val = 'f' THEN '' END ||
        CASE    WHEN pid.vartreatcf_policy_val  ='t'  THEN 'Policy/Procedure. ' 
WHEN
pid.vartreatcf_policy_val = 'f' THEN '' END ||
        CASE    WHEN pid.vartreatcf_prep_fortest_val  ='t'  THEN 'Preparation 
for test. '       WHEN
pid.vartreatcf_prep_fortest_val = 'f' THEN '' END || 
        CASE    WHEN pid.vartreatcf_selfmedicating_val  ='t'  THEN 
'Self-Medicating. '  WHEN
pid.vartreatcf_selfmedicating_val = 'f' THEN '' END ||
        CASE    WHEN pid.vartreatcf_transcription_val  ='t'  THEN 
'Transcription. '     WHEN
pid.vartreatcf_transcription_val = 'f' THEN '' END ||
        CASE    WHEN pid.vartreatcf_transport_val  ='t'  THEN 
'Transport/Delivery. '    WHEN
pid.vartreatcf_transport_val = 'f' THEN '' END || 
        CASE    WHEN pid.vartreatcf_unexp_movement_val  ='t'  THEN 'Unexpected 
Movement. '      WHEN
pid.vartreatcf_unexp_movement_val = 'f' THEN '' END ||
        CASE    WHEN pid.vartreatcf_wrong_patient_val  ='t'  THEN 'Wrong 
Patient. '     WHEN
pid.vartreatcf_wrong_patient_val = 'f' THEN '' END || 
        CASE    WHEN pid.vartreatcf_other_val  ='t'  THEN 'Other'       WHEN 
pid.vartreatcf_other_val = 'f' THEN
'' END ||
                
                
        CASE    WHEN pid.misccomplcf_behaviour_val  ='t'  THEN 'Behaviour. '    
WHEN
pid.misccomplcf_behaviour_val = 'f' THEN '' END || 
        CASE    WHEN pid.misccomplcf_body_mechanics_val  ='t'  THEN 'Body 
Mechanics. '  WHEN
pid.misccomplcf_body_mechanics_val = 'f' THEN '' END ||
        CASE    WHEN pid.misccomplcf_communication_val  ='t'  THEN 
'Communication/Information. '        WHEN
pid.misccomplcf_communication_val = 'f' THEN '' END ||
        CASE    WHEN pid.misccomplcf_computer_probl_val  ='t'  THEN 'Computer 
Problems. '       WHEN
pid.misccomplcf_computer_probl_val = 'f' THEN '' END || 
        CASE    WHEN pid.misccomplcf_env_conditions_val  ='t'  THEN 
'Environmental Conditions. '        WHEN
pid.misccomplcf_env_conditions_val = 'f' THEN '' END ||
        CASE    WHEN pid.misccomplcf_eq_malfunction_val  ='t'  THEN 'Equipment 
Malfunction. '   WHEN
pid.misccomplcf_eq_malfunction_val = 'f' THEN '' END ||
        CASE    WHEN pid.misccomplcf_eq_supplies_val  ='t'  THEN 
'Equipment/Supplies Unavailable. '     WHEN
pid.misccomplcf_eq_supplies_val = 'f' THEN '' END || 
        CASE    WHEN pid.misccomplcf_expectations_val  ='t'  THEN 
'Expectations. '      WHEN
pid.misccomplcf_expectations_val = 'f' THEN '' END ||
        CASE    WHEN pid.misccomplcf_instructions_val  ='t'  THEN 'Instructions 
Not Followed. ' WHEN
pid.misccomplcf_instructions_val = 'f' THEN '' END ||
        CASE    WHEN pid.misccomplcf_interference_val  ='t'  THEN 
'Interference/Interruption. ' WHEN
pid.misccomplcf_interference_val = 'f' THEN '' END || 
        CASE    WHEN pid.misccomplcf_physical_condition_val  ='t'  THEN 
'Physical/Medical Condition. '  WHEN
pid.misccomplcf_physical_condition_val = 'f' THEN '' END ||
        CASE    WHEN pid.misccomplcf_policy_val  ='t'  THEN 'Policy/Procedure. 
'        WHEN
pid.misccomplcf_policy_val = 'f' THEN '' END ||
        CASE    WHEN pid.misccomplcf_susp_substance_val  ='t'  THEN 'Suspected 
Substance/Alcohol Use. ' WHEN
pid.misccomplcf_susp_substance_val = 'f' THEN '' END ||
        CASE    WHEN pid.misccomplcf_unexp_movement_val  ='t'  THEN 'Unexpected 
Movement. '     WHEN
pid.misccomplcf_unexp_movement_val = 'f' THEN '' END ||
        CASE    WHEN pid.misccomplcf_other_val  ='t'  THEN 'Other'      WHEN 
pid.misccomplcf_other_val = 'f' THEN
'' END 
AS "Cont Factors",

        CASE
                WHEN pid.bed_alarms_val = 'On' THEN 'On'
                WHEN pid.bed_alarms_val = 'Off' THEN 'Off'
                ELSE NULL
                END
            AS "Bed Alarms", 
        CASE
                WHEN pid.height_bedstretcher_val = 'Up' THEN 'Up'
                WHEN pid.height_bedstretcher_val = 'Down' THEN 'Down'
                ELSE NULL
                END
            AS "Bed/Stretcher", 
        CASE
                WHEN pid.brakes_val = 'On' THEN 'On'
                WHEN pid.brakes_val = 'Off' THEN 'Off'
                ELSE NULL
                END
            AS "Brakes", 
        CASE
                WHEN pid.restraints_val ='On' THEN 'On'
                WHEN pid.restraints_val ='Off' THEN 'Off'
                ELSE NULL
                END
            AS "Restraints", 
        CASE
                WHEN pid.siderails_val ='Up and Down' THEN 'Up and Down'
                WHEN pid.siderails_val ='Up' THEN 'Up'
                WHEN pid.siderails_val ='Down' THEN 'Down'
                ELSE NULL
                END
            AS "Siderails", 
        CASE
                WHEN pid.walking_aid_val ='Yes' THEN 'Yes'
                WHEN pid.walking_aid_val ='No' THEN 'No'
                ELSE NULL
                END
            AS "Walking Aid", 


        CASE
                WHEN pi.incident_witnessed ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "Witnessed", 


        CASE
                WHEN high_risk_medication_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "High Risk Medictation", 

        CASE WHEN pid.inc_nature_abrasion_val ='t'  THEN 
'Abrasion/Bruise/Contusion. '  WHEN
pid.inc_nature_abrasion_val = 'f' THEN '' END || 
        CASE WHEN pid.inc_nature_allergic_reaction_val ='t'  THEN 'Allergic 
Reaction. ' WHEN
pid.inc_nature_allergic_reaction_val = 'f' THEN '' END || 
        CASE WHEN pid.inc_nature_back_injury_val ='t'  THEN 'Back Injury. '     
WHEN
pid.inc_nature_back_injury_val = 'f' THEN '' END || 
        CASE WHEN pid.inc_nature_bite_val ='t'  THEN 'Bite. '   WHEN 
pid.inc_nature_bite_val = 'f' THEN ''
END || 
        CASE WHEN pid.inc_nature_bleeding_val ='t'  THEN 'Bleeding/Hemorrhage. 
'        WHEN
pid.inc_nature_bleeding_val = 'f' THEN '' END || 
        CASE WHEN pid.inc_nature_burn_val ='t'  THEN 'Burn. '   WHEN 
pid.inc_nature_burn_val = 'f' THEN ''
END || 
        CASE WHEN pid.inc_nature_dislocation_val ='t'  THEN 'Displ. '   WHEN 
pid.inc_nature_dislocation_val
= 'f' THEN '' END || 
        CASE WHEN pid.inc_nature_eyeinjury_val ='t'  THEN 'Eye Injury/Splash. ' 
WHEN
pid.inc_nature_eyeinjury_val = 'f' THEN '' END || 
        CASE WHEN pid.inc_nature_fracture_val ='t'  THEN 'Fracture/Possible 
Fracture. ' WHEN
pid.inc_nature_fracture_val = 'f' THEN '' END || 
        CASE WHEN pid.inc_nature_inhalation_val ='t'  THEN 'Inhalation 
Exposure. '      WHEN
pid.inc_nature_inhalation_val = 'f' THEN '' END || 
        CASE WHEN pid.inc_nature_laceration_val ='t'  THEN 'Laceration/Cut. '   
WHEN
pid.inc_nature_laceration_val = 'f' THEN '' END || 
        CASE WHEN pid.inc_nature_loss_limb_val ='t'  THEN 'Loss of 
Limb/Appendage. '    WHEN
pid.inc_nature_loss_limb_val = 'f' THEN '' END || 
        CASE WHEN pid.inc_nature_effect_ofmedication_val ='t'  THEN 'Outward 
Effect of Medication. '    WHEN
pid.inc_nature_effect_ofmedication_val = 'f' THEN '' END || 
        CASE WHEN pid.inc_nature_puncture_val ='t'  THEN 'Puncture. '   WHEN 
pid.inc_nature_puncture_val =
'f' THEN '' END || 
        CASE WHEN pid.inc_nature_rash_val ='t'  THEN 'Rash. '   WHEN 
pid.inc_nature_rash_val = 'f' THEN ''
END || 
        CASE WHEN pid.inc_nature_skin_tear_val ='t'  THEN 'Skin Tear. ' WHEN 
pid.inc_nature_skin_tear_val
= 'f' THEN '' END || 
        CASE WHEN pid.inc_nature_sprain_val ='t'  THEN 'Sprain/Strain. '        
WHEN pid.inc_nature_sprain_val =
'f' THEN '' END || 
        CASE WHEN pid.inc_nature_noneapparent_val ='t'  THEN 'Not Apparent. '   
WHEN
pid.inc_nature_noneapparent_val = 'f' THEN '' END || 
        CASE WHEN pid.inc_nature_other_val ='t'  THEN 'Other'   WHEN 
pid.inc_nature_other_val = 'f' THEN ''
END
        AS "Physical Nature",

        d.long_desc AS "Degree of Injury", 
        e.long_desc AS "Mobility",

        CASE
                WHEN pid.diagnostic_ct_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "CT", 

        CASE
                WHEN pid.diagnostic_labwork_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "Lab Work", 

        CASE
                WHEN pid.diagnostic_mri_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "MRI", 

        CASE
                WHEN pid.diagnostic_ultrasound_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "Ultrasound", 

        CASE
                WHEN pid.diagnostic_xray_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "X-Ray", 

        CASE
                WHEN pid.diagnostic_other_text  != '' THEN 
pid.diagnostic_other_text
                ELSE NULL
                END
            AS "Other", 

        CASE
                WHEN pid.no_diagnostic_req_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "No Diagnostic Reqd",

        CASE
                WHEN pid.doc_chart_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "Chart Doc", 

        CASE
                WHEN pid.doc_doctor_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "Doctor", 

        CASE
                WHEN pid.doc_substitute_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "Sub Dec Maker", 

        CASE
                WHEN pid.doc_supervisor_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "Supervisor", 

        CASE
                WHEN pid.doc_maintenance_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "Maintenance", 

        CASE
                WHEN pid.doc_safety_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "Safety", 

        CASE
                WHEN pid.doc_pharmacy_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "Pharmacy", 

        CASE
                WHEN pid.doc_police_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "Police", 

        CASE
                WHEN pid.doc_security_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "Security", 

        CASE
                WHEN pid.doc_compensation_val ='t' THEN 'Yes'
                ELSE NULL
                END
            AS "Work Comp"

FROM    incident pi, location pl, code pc, incident_detail pid, facility pf, 
code a, code b, code
d, code e, code f, code g, code h, code i, code j
 
WHERE ( pid.incident_type_cid = pc.id)

        AND extract ( MONTH FROM pi.incident_date ) = $1
        AND ( pi.person_status_code_id = g.id AND g.long_desc = $2 )
        
        AND SUBSTRING(pi.serial_and_hospital_number FROM 9 FOR 5) = $3
        
        AND ( pi.severity_code_id = j.id AND j.long_desc = $4 ) 

        AND ( pid.incident_type_cid = h.id AND h.long_desc = $5 ) 
        
        AND ( ( pid.inc_nature_abrasion_val = 't' AND 
pid.inc_nature_abrasion_cid = i.id  
                        OR pid.inc_nature_allergic_reaction_val = 't' AND 
pid.inc_nature_allergic_reaction_cid = i.id 
                        OR pid.inc_nature_back_injury_val = 't' AND 
pid.inc_nature_back_injury_cid = i.id 
                        OR pid.inc_nature_bite_val = 't' AND 
pid.inc_nature_bite_cid = i.id 
                        OR pid.inc_nature_bleeding_val = 't' AND 
pid.inc_nature_bleeding_cid = i.id 
                        OR pid.inc_nature_burn_val = 't' AND 
pid.inc_nature_burn_cid = i.id 
                        OR pid.inc_nature_dislocation_val = 't' AND 
pid.inc_nature_dislocation_cid = i.id 
                        OR pid.inc_nature_eyeinjury_val = 't' AND 
pid.inc_nature_eyeinjury_cid = i.id 
                        OR pid.inc_nature_fracture_val = 't' AND 
pid.inc_nature_fracture_cid = i.id 
                        OR pid.inc_nature_inhalation_val = 't' AND 
pid.inc_nature_inhalation_cid = i.id 
                        OR pid.inc_nature_laceration_val = 't' AND 
pid.inc_nature_laceration_cid = i.id 
                        OR pid.inc_nature_loss_limb_val = 't' AND 
pid.inc_nature_loss_limb_cid = i.id 
                        OR pid.inc_nature_effect_ofmedication_val = 't' AND 
pid.inc_nature_effect_ofmedication_cid =
i.id 
                        OR pid.inc_nature_puncture_val = 't' AND 
pid.inc_nature_puncture_cid = i.id 
                        OR pid.inc_nature_rash_val = 't' AND 
pid.inc_nature_rash_cid = i.id 
                        OR pid.inc_nature_skin_tear_val = 't' AND 
pid.inc_nature_skin_tear_cid = i.id 
                        OR pid.inc_nature_sprain_val = 't' AND 
pid.inc_nature_sprain_cid = i.id 
                        OR pid.inc_nature_noneapparent_val = 't' AND 
pid.inc_nature_noneapparent_cid = i.id 
                        OR pid.inc_nature_other_val = 't' AND 
pid.inc_nature_other_cid = i.id )  AND i.long_desc = $6 )

        
        AND pi.id = pid.id
        AND ( pid.incident_type_cid BETWEEN 117 AND 123 )

        
        /**************************/
                $7 IS NOT NULL THEN f.id = pid.specific_location_cid AND 
f.long_desc = $7
        /**************************/
        
        
        AND ( pi.location_id = pl.id )
        AND pf.id = pl.facility_id
        
        AND pi.person_status_code_id = b.id

        AND (   ((a.id = pid.falls_subtype_cid) AND (pid.falls_subtype_cid 
BETWEEN 138 and 149))
                OR ((a.id = pid.falls_subtype_cid) AND (pid.falls_subtype_cid 
BETWEEN 278 and 283))
                OR ((a.id = pid.falls_subtype_cid) AND (pid.falls_subtype_cid = 
285))

                OR ((a.id = pid.medvariance_treatment_subtype_cid) AND 
(pid.medvariance_treatment_subtype_cid
BETWEEN 150 and 188))
                OR ((a.id = pid.medvariance_treatment_subtype_cid) AND 
(pid.medvariance_treatment_subtype_cid =
284))

                OR ((a.id = pid.misc_complaints_subtype_cid) AND 
(pid.misc_complaints_subtype_cid BETWEEN 189
and 224))
        )

        AND (   (d.id = pid.injury_degree_cid) AND (pid.injury_degree_cid 
BETWEEN 84 and 90))


        AND (   (e.id = pid.mobility_level_cid) AND (pid.mobility_level_cid IN 
(258, 259, 260, 320)) )

        AND pi.person_status_code_id IN (16,18,20,22,24,25,26,27)

ORDER BY pi.serial_number

loop
return NEXT r;
END loop;
return;
END
$BODY$
  LANGUAGE 'plpgsql' STABLE STRICT;
ALTER FUNCTION sp_hirs_a_01dd(integer, character varying, integer, character 
varying, character
varying, character varying, character varying) OWNER TO postgres;


---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

               http://www.postgresql.org/docs/faq

Reply via email to