<!--- Read data from two datasource tables. ---> 
<cfquery name="GetTable" datasource="#Application.DataSrc#">
      SELECT TABLE_SCHEMA  FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA like '%agency%' group by  TABLE_SCHEMA
</cfquery>
<cfset database=arraynew(1)>

<cfloop query="GetTable">
<cfset database[CurrentRow]= TABLE_SCHEMA>
</cfloop>

<cfloop from=1 to=#ArrayLen(database)# index=ind>
   <cfif ArrayLen(database) gt 1>
      <cfset Request.prefix_db_agency = #database[ind]# />
   </cfif>
   <cfquery name="GetPatients"  datasource="#Application.DataSrc#">
       SELECT pPatients.*,pAdmit.Refer_Phys_ID,pAdmit.Render_Phys_ID FROM  #Request.prefix_db_agency#.pPatients
       JOIN #Request.prefix_db_agency#.pAdmit ON  pPatients.Patient_ID =  pAdmit.Patient_ID
       WHERE pAdmit.Status =  <cfqueryparam value="0" cfsqltype="CF_SQL_INTEGER">
       AND  pPatients.Status =  <cfqueryparam value="0" cfsqltype="CF_SQL_INTEGER">
       GROUP BY Patient_ID DESC
   </cfquery>

  
  
   <cfloop query="GetPatients">
   
       <cfquery name="GetPhy"  datasource="#Application.DataSrc#">
         SELECT * FROM #Request.prefix_db_lookup#.pPhysicians 
         WHERE Phys_ID  = <cfqueryparam value="#Refer_Phys_ID#" cfsqltype="CF_SQL_INTEGER">
         AND Status =  <cfqueryparam value="0" cfsqltype="CF_SQL_INTEGER">
      </cfquery>
      <cfif GetPhy.Emp_ID NEQ ''>
         <cfset Employee_ID = #GetPhy.Emp_ID# />
      <cfelse>
         <cfset Employee_ID = 0 />
      </cfif> 
      <cfquery name="GetCarplans"  datasource="#Application.DataSrc#">
          SELECT pCareplan.* FROM  #Request.prefix_db_agency#.pCareplan
          JOIN #Request.prefix_db_agency#.pAssessments ON pAssessments.Assmt_ID = pCareplan.Assmt_ID
          WHERE pAssessments.Patient_ID  = <cfqueryparam value="#Patient_ID#" cfsqltype="CF_SQL_INTEGER">
          AND pAssessments.Status =  <cfqueryparam value="0" cfsqltype="CF_SQL_INTEGER">
          AND pCareplan.Status =  <cfqueryparam value="0" cfsqltype="CF_SQL_INTEGER">
          AND DATE(pCareplan.Date_Change) =  DATE (now())
          GROUP BY pCareplan.Careplan_ID 
          ORDER BY Order_ID ASC
      </cfquery>

      <cfquery name="GetMeds"  datasource="#Application.DataSrc#">
          SELECT * FROM  #Request.prefix_db_agency#.pPtmeds
          WHERE Patient_ID  = <cfqueryparam value="#Patient_ID#" cfsqltype="CF_SQL_INTEGER"> 
          AND Status =  <cfqueryparam value="0" cfsqltype="CF_SQL_INTEGER">
          AND DATE(Record_Mod_Date) =  DATE (now())
          GROUP BY PtMeds_ID 
          ORDER BY Drug_Name ASC
      </cfquery>
      <cfset message = "" />
      <cfset careplans = #ValueList(GetCarplans.Description,"<br>")# />
      <cfset meds = #ValueList(GetMeds.Drug_Name,"<br>")# />
      <cfset memo = careplans & meds />
      <cfif GetCarplans.recordcount gt 0  AND GetMeds.recordcount gt 0>
         <cfset message =  #DateFormat(now(),"mm/dd/yyy")# & " > all medication changes and careplan changes made on " &  #DateFormat(now(),"mm/dd/yyy")# & " compiled on one communication and sent to physician for signature" />
      <cfelseif  GetCarplans.recordcount gt 0 >
          <cfset message =  #DateFormat(now(),"mm/dd/yyy")# & " > all careplan changes made on " &  #DateFormat(now(),"mm/dd/yyy")# & " compiled on one communication and sent to physician for signature" />
      <cfelseif  GetMeds.recordcount gt 0 >
          <cfset message =  #DateFormat(now(),"mm/dd/yyy")# & " > all medication changes made on " &  #DateFormat(now(),"mm/dd/yyy")# & " compiled on one communication and sent to physician for signature" />
      </cfif>
      <cfif GetCarplans.recordcount gt 0  OR GetMeds.recordcount gt 0>
          <cfquery name="Comm" datasource="#Application.DataSrc#">
             INSERT INTO #Request.prefix_db_agency#.Communication (
               CommSub_ID,
               Agency_ID,
               Patient_ID,
               Employee_ID,
               Comm_Date,
               Memo,
               Followup_desc,
               Followup_memo,
               Resolved,
               Record_Creation_Date,
               Record_Created_By,
               Record_Mod_Date,
               Record_Mod_By
             ) VALUES (
               '1',
               '#Loc_ID#',
               '#Patient_ID#',
               '#Employee_ID#',
                #CreateODBCDate(now())#,
               '#Trim(memo)#',
               '#message#',
               '',
               'No',
               #CreateODBCDate(now())#,
               '2',
               #CreateODBCDate(now())#,
               '2'
            )
         </cfquery> 
         <cfquery name='getId' datasource='#Application.DataSrc#'>
            Select LAST_INSERT_ID() AS id
         </cfquery>
         <cfset Comm_ID = getId.id />
         <cfquery name='commInsert' datasource='#Application.DataSrc#'>
           INSERT INTO #Request.prefix_db_agency#.communication_to 
            (comm_id, employee_id) 
              VALUES 
            ('#Comm_ID#', '#Employee_ID#')
         </cfquery>
         <cfset toEmail = #GetPhy.Phys_Email# />
          <cfmail to = "#toEmail#"
             from = "info@myhomecarebiz.com"  cc="velmurugan@myhomecarebiz.com"
             subject = "MyHomeCareBiz.com New Careplans/MedicationsCommunication..."
             type = "html">
            <br><br>
            A New Communication has been Assigned to You at MyHomeCareBiz.com by Automatically.
            <br><br>
            Please <a href='#application.siteURL#/agencyadmin/index.cfm?page=agency&cat=Communication&rpt=communication_view&ID=#Comm_ID#'>click here</a> to View the New Communication.
            <br><br>
            <br><br>
            <i>
            This is an automated system notification from MyHomeCareBiz.com. Therefore, there is no Unsubscribe option.
            </i>
            <br><br><br><br><br><br>
      </cfmail>

      </cfif>

   </cfloop>
   
           


</cfloop>
