
<cfquery name="DELETEVisit_Compliance" datasource="#Application.DataSrc#">
		DELETE FROM #Request.prefix_db_agency#.pVisit_Compliance 
		WHERE Auth_ID  = <cfqueryparam cfsqltype="cf_sql_integer" value="#Auth_ID#">
</cfquery>

<cfquery name="getauths"  datasource="#Application.DataSrc#">
    SELECT * FROM #Request.prefix_db_agency#.pAuths
    JOIN #Request.prefix_db_agency#.pAssessments ON pAssessments.Assmt_ID = pAuths.Assmt_ID
    WHERE pAuths.Auth_ID  = <cfqueryparam cfsqltype="cf_sql_integer" value="#Auth_ID#">
    AND pAuths.Patient_ID = <cfqueryparam cfsqltype="cf_sql_integer" value="#Patient_ID#">
    AND pAuths.Status = 0 
	AND pAssessments.Status = 0 
    GROUP BY Auth_ID
</cfquery>


<cfquery name="getschedules"  datasource="#Application.DataSrc#">
    SELECT * FROM #Request.prefix_db_agency#.pSchedules
    WHERE Auth_ID = <cfqueryparam cfsqltype="cf_sql_integer" value="#Auth_ID#">
    AND Patient_ID = <cfqueryparam cfsqltype="cf_sql_integer" value="#Patient_ID#">
    AND pSchedules.Status = 0 
    GROUP BY Schedule_ID
</cfquery>


<cfset form.Record_Creation_Date = "#Now()#" />
<cfset form.Record_Created_By = #session.employeeid# />
<cfset form.Record_Mod_Date = #Now()# />
<cfset form.Record_Mod_By = #session.employeeid# />

<cfset ordervisits = ArrayNew(1)>
<cfoutput query="getauths">
	<cfset Request.Auth_ID = #getauths.Auth_ID# />
	<cfloop index = "k" from="1" to="4">
		<cfset setweeks = getauths['Set_'& k &'_weeks'] />
			<cfloop from="1" to="#setweeks#" index="i">
				<cfset setvisits =  getauths['Set_'& k &'_visits']  />
				<cfset ArrayAppend(ordervisits, setvisits)>      
			</cfloop>
	</cfloop>
</cfoutput>
<cfoutput query="getauths">
		<cfset Request.Date_Start = #getauths.F177# />
		<cfset Request.Date_End = #getauths.F177# />
		<cfset Request.Cert_End = #getauths.F178# />
		<cfset Request.Cert_Start = #getauths.F177# />
		<cfset Request.Auth_ID = #getauths.Auth_ID# />
		<cfset countVar = 0 />
        <cfset Request.Week_No = 1 />
        <cfset Request.Visit_No = 0 />
        <cfif getauths.F177 NEQ ''>
	        <cfloop condition = "CountVar EQ 0"> 
				<cfset Request.Date_Start = #Request.Date_Start# />
				<cfset Request.Date_End = #DateAdd("d",6,Request.Date_Start)# />
				<cfset Request.Date_End = #DateFormat(Request.Date_End,"yyyy-mm-dd")# />
				<cfquery name="getschduledweek" dbtype="query">
				    SELECT * FROM  getschedules
				    WHERE Visit_Date BETWEEN  '#Request.Date_Start#' AND '#Request.Date_End#' AND prn_visit !=1 
				</cfquery>
				<cfset Request.Visit_No = 0 />
				<cfif ArrayIsDefined(ordervisits,Request.Week_No)>
					<cfset Request.Visit_No = ordervisits[Request.Week_No] />
				</cfif>

				<!--- <cfset Request.Visit_No = getschduledweek.recordcount />
				Week_No - #Request.Week_No#<br>
				Date_Start - #Request.Date_Start#<br>
				Date_End - #Request.Date_End#<br>
				Visit_No - #Request.Visit_No#<br> --->

	            <cfquery name="Insert_pVisit_Compliance"  datasource="#Application.DataSrc#">
	                INSERT INTO #Request.prefix_db_agency#.pVisit_Compliance 
	                    (
	                    	Auth_ID, Week_No, Date_Start, Date_End, Visit_No, PRN, Date_Create,
	                      Created_by, Date_Change, Change_by
	                    )
	                VALUES 
	                   (
	                    <cfqueryparam VALUE="#Request.Auth_ID#"  cfsqltype="cf_sql_integer">,
	                    <cfqueryparam VALUE="#Request.Week_No#"  cfsqltype="cf_sql_integer">,
	                    <cfqueryparam VALUE="#Request.Date_Start#"  cfsqltype="cf_sql_date">,
	                    <cfqueryparam VALUE="#Request.Date_End#"  cfsqltype="cf_sql_date">,
	                    <cfqueryparam VALUE="#Request.Visit_No#"  cfsqltype="cf_sql_integer">,
	                    <cfqueryparam VALUE="0"  cfsqltype="cf_sql_integer">,
	                    <cfqueryparam VALUE="#form.Record_Creation_Date#"  cfsqltype="cf_sql_timestamp">,
		      	        <cfqueryparam VALUE="#form.Record_Created_By#"  cfsqltype="cf_sql_integer">,
		      	        <cfqueryparam VALUE="#form.Record_Creation_Date#"  cfsqltype="cf_sql_timestamp">,
		      	        <cfqueryparam VALUE="#form.Record_Created_By#"  cfsqltype="cf_sql_integer">
		      	        )
	            </cfquery>

				<cfset Request.Date_Start = #DateAdd("d",1,Request.Date_End)# />
				<cfset Request.Date_Start = #DateFormat(Request.Date_Start,"yyyy-mm-dd")# />
				<cfset Request.Week_No = Request.Week_No + 1 />
				<cfif Request.Date_End GTE Request.Cert_End>
					<cfset CountVar = 1 >
				</cfif>         
			</cfloop>
		</cfif>

		<cfquery name="getPRNdweek" dbtype="query">
			    SELECT * FROM  getschedules
			    WHERE Visit_Date BETWEEN  '#getauths.F177#' AND '#getauths.F178#' AND prn_visit =1 
		</cfquery>
        <cfset Request.Visit_No = getPRNdweek.recordcount />
        <cfif Request.Cert_Start NEQ ''>
			<cfquery name="Insert_pVisit_Compliance"  datasource="#Application.DataSrc#">
	                INSERT INTO #Request.prefix_db_agency#.pVisit_Compliance 
	                    (
	                    	Auth_ID, Week_No, Date_Start, Date_End, Visit_No, PRN, Date_Create,
	                      Created_by, Date_Change, Change_by
	                    )
	                VALUES 
	                   (
	                    <cfqueryparam VALUE="#Request.Auth_ID#"  cfsqltype="cf_sql_integer">,
	                    <cfqueryparam VALUE="0"  cfsqltype="cf_sql_integer">,
	                    <cfqueryparam VALUE="#Request.Cert_Start#"  cfsqltype="cf_sql_date">,
	                    <cfqueryparam VALUE="#Request.Cert_End#"  cfsqltype="cf_sql_date">,
	                    <cfqueryparam VALUE="0"  cfsqltype="cf_sql_integer">,
	                    <cfqueryparam VALUE="#Request.Visit_No#"  cfsqltype="cf_sql_integer">,
	                    <cfqueryparam VALUE="#form.Record_Creation_Date#"  cfsqltype="cf_sql_timestamp">,
		      	        <cfqueryparam VALUE="#form.Record_Created_By#"  cfsqltype="cf_sql_integer">,
		      	        <cfqueryparam VALUE="#form.Record_Creation_Date#"  cfsqltype="cf_sql_timestamp">,
		      	        <cfqueryparam VALUE="#form.Record_Created_By#"  cfsqltype="cf_sql_integer">
		      	        )
	        </cfquery>
	    </cfif>

</cfoutput>
