

<cfset myarray[1] = "empty value"> 
<cfquery name="Agency" datasource="#Application.DataSrc#">
	SELECT agency_id from #Request.prefix_db_lookup#.Agency where status='active' ORDER BY agency_id
</cfquery>

<cfset myarray=arraynew(1)>
<cfloop query="Agency">
    <cfset myarray[CurrentRow]=agency_id>
</cfloop>
<cfset doninsert =  1 >
<cfset billingSFTP = createObject("component", "components.billing.billing_sftp") />
<!--- Do not delete remote 835 files on stage/dev servers. --->
<cfset isNonProdServer = (
	CGI.SERVER_NAME EQ "127.0.0.1" OR CGI.SERVER_NAME EQ "localhost"
	OR CGI.SERVER_NAME EQ "52.23.186.30" OR CGI.SERVER_NAME EQ "dev.myhomecarebiz.com"
	OR CGI.SERVER_NAME EQ "98.87.35.139" OR CGI.SERVER_NAME EQ "devsecure.myhomecarebiz.com"
	OR CGI.SERVER_NAME EQ "54.175.136.41" OR CGI.SERVER_NAME EQ "stagesecure.myhomecarebiz.com"
) />
<!--- #10476: process all SFTP accounts (hcbserv shared + dedicated e.g. Evergreen 1195) --->
<cfset importConnections = billingSFTP.getImportConnections() />
<cfset reading_filepath = "/var/www/Upload/remits/" />
<cfif NOT directoryExists(reading_filepath)>
	<cfdirectory action="create" directory="#reading_filepath#">
</cfif>
<cfloop array="#importConnections#" index="importConn">
<cftry>
<cfset objFTPProperties = importConn.connection />
<cfset dedicatedAgencyId = importConn.dedicatedAgencyId />
<cfset sftpAccountLabel = objFTPProperties.Username />
<cfftp action="open" connection="objConnection" attributeCollection="#objFTPProperties#" >
<cfftp connection="objConnection" action="listdir" directory="/outgoing/remits/" name="dirlist" stoponerror="Yes"> 
<h3>The current directory is <cfoutput>#dirlist.recordCount#</cfoutput>
 <!--- <cfdump var="#dirlist#" >--->
<cfset name2=ArrayNew(1) />
<cfset counts = #dirlist.recordCount# - 1 />
<cfset split_delimiter = "*" >
	<div class="portlet box blue">
				<div class="portlet-title">
					<div class="caption">
						<i class="fa fa-gear"></i>Payment Claims
					</div>
					<div class="tools">
						<a class="collapse" href="javascript:;" data-original-title="" title="">
						</a>
					</div>
				</div>
				<div class="portlet-body flip-scroll">
					<table class="table table-bordered table-striped table-condensed flip-content" border="1">
						<thead class="flip-content" >
							<tr>
								<th>Patient Name </th>
								<th>Date Deposit </th>
								<th>Deposit_Type</th>
								<th>Date Check/ Status </th>
								<th>Remit_No </th>
								<th>Internal Control_number</th>
								<th>Pay Name </th>
								<th>Payer type </th>
								<th>Visit Date</th>
								<th>Revenue Code</th>
								<!--- <th>SVC03</th>
								<th>SVC04</th> --->
								<th>Net Total </th>
								<th>Paid Amount </th>
								<th>Adjustment<br>Amount</th>
								<th>Adjustment<br> Group code</th>
								<th>Adjustment<br>code</th>
								<th>Seq <br>Amount</th>	
								<th>Seq <br>Code</th>	
							</tr>
						</thead>
	                    <tbody style="text-align:center;">                         
                      		<cfoutput> 
							    <cfloop from="1" to="#dirlist.recordCount#" index="k">
							     	<cfset filepath = "/Upload/remits/" />
									<cfset name2 = #dirlist.name[k]# />
									<cfset filepath2 = filepath&name2 >
									<cfif (Right(name2,4) eq  '.835')>
									 	<cfftp action="getfile"  remotefile="/outgoing/remits/#name2#" localfile="#reading_filepath##name2#"
												failIfExists="no" timeout="300" connection="objConnection" />  
							            <cffile action="read"  variable="fileContent" file="#reading_filepath#/#name2#" >
							            <cfset filearray  =ListToArray(#fileContent#,'~')/>
							            <cfset delete_deposit = 1 >
						                <!--- <cfdump var="#filearray#"> --->
					              		<cfif ArrayLen(filearray) GTE 3>
							            	<cfset thirdlinearray  =ListToArray(#filearray[3]#,'*')/>   
							            	<cfif ArrayLen(thirdlinearray) GTE 2 AND thirdlinearray[2] EQ '835'>
					              			<cftry>
								              <cfset secondlinearray  =ListToArray(#filearray[2]#,'*')/> 
								              <cfset dateofdeposit =     secondlinearray[5] />
								              <cfset Date_Deposit = createObject("java","java.text.SimpleDateFormat").init("yyyyMMdd").parse(#dateofdeposit#,createObject("java","java.text.ParsePosition").init(0*0)) />
								              <cfset Date_Deposit = #dateformat(Date_Deposit,"yyyy-mm-dd")# />
								             
								              <cfset fourthlinearray  =ListToArray(#filearray[4]#,'*')/> 
								              <cfset Check_Total = fourthlinearray[3] />
								              <cfset Deposit_Type = fourthlinearray[5] />
								              <cfset date_check = fourthlinearray[#ArrayLen(fourthlinearray)#] />
								              <cfset Date_Check = createObject("java","java.text.SimpleDateFormat").init("yyyyMMdd").parse(#date_check#,createObject("java","java.text.ParsePosition").init(0*0)) />             
								              <cfset Date_Check = #dateformat(Date_Check,"yyyy-mm-dd")# />

								              <cfset fifthlinearray  =ListToArray(#filearray[5]#,'*')/> 
								              <cfset Remit_No = fifthlinearray[3] />
								               <cfset Pay_Name = ""/> 
								               <cfloop from="6" to="#arraylen(filearray)#" index="arrayitem">
									                <cfif  Left(Trim(filearray[arrayitem]),6) EQ 'N1*PR*'>
														<cfset payerarray  =ListToArray(#filearray[arrayitem]#,'*')/> 
								              			<cfset Pay_Name = payerarray[3] />								              			
													</cfif>
												</cfloop>							          
								                <cfset strWords = Replace(#fileContent#, "CLP", "<", "all") />
								                <cfset CLPallarray = ListToArray(#strWords#,'<') />
								                

								              	<cfloop from="2" to="#arraylen(CLPallarray)#" index="item">
								             	 	 <cfset  CLP  =ListToArray(#CLPallarray[item]#,'*')/>
								             	 	 <cfset strWords = Replace(#fileContent#, "CLP", "<", "all") />
								             	 	 <cfset  CLPlines  =ListToArray(#CLPallarray[item]#,'~')/>
								             	 	 <cfset HCPCS_ID = 0 />
					             	 	 	 		 <cfset SVC04 = 0 />
					             	 	 	 		 <cfset SVC03 = 0 />
					             	 	 	 		 <cfset Amount_Writeoff = 0 />
					             	 	 	 		 <cfset Visit_Date  = 0 />
					             	 	 	 		 <cfset Adjustment_Amount_2 =  "" />
					              				     <cfset Adjustment_Code_2 = "" />
					              				     <cfset Adjustment_Group_Code_2 = "" />
					             	 	 	 		

								             		<cfset Internal_control_number =  #CLP[1]# />
								             		<cfset claim_type =  #CLP[2]# />
								             		<cfif <!--- claim_type NEQ '22' AND---> claim_type NEQ '4'>
									             		<cfset agencynumber  =ListToArray(Internal_control_number,'-')/> 
									             		<cfset agencyIdFromControl = agencynumber[1] />
									             		<cfset processThisClaim = true />
									             		<cfif len(dedicatedAgencyId) AND agencyIdFromControl NEQ dedicatedAgencyId>
									             			<cfset processThisClaim = false />
									             		</cfif>
									             		<cfif processThisClaim>
									             		<cfif  Internal_control_number contains '-'>
										              	  <cfset Request.prefix_db_agency  = 'agency_'&agencynumber[1] />
										                <cfelse>
										              	  <cfset Request.prefix_db_agency  = 'agency_179' />
										                </cfif>
									             		<cfset agencynumber  =ListToArray(Internal_control_number,'-')/> 
									             		<cfquery name="getinvoices" dataSource="#Application.DataSrc#">
													         SELECT Invoices.Invoice_ID,Invoices.PatientPayer_ID,Invoices.Internal_control_number,
													             Invoices.Patient_ID,pPayer.Output ,pPayer.Pay_Name,
													          pPatients.Pt_Last,pPatients.Pt_First
													          FROM #Request.prefix_db_agency#.Invoices
													          JOIN #Request.prefix_db_agency#.pPatients ON  pPatients.Patient_ID  =  Invoices.Patient_ID  AND pPatients.Status < 2 
													          JOIN #Request.prefix_db_agency#.pPayer ON  pPayer.Pay_ID  =  Invoices.PatientPayer_ID  AND pPayer.Status = 0
													         WHERE Invoices.Internal_control_number IN ('#Internal_control_number#') 
													        <!---  AND Invoices.deleted <> 1  --->
													    </cfquery>

													    <cfset j = 1 >
								             		 	<cfset Adjust_code =  0 />
							              				<cfset Adjustment_Amount =  0 />
							              				<cfset group_code =  0 />
							             				<cfset Total_amount =  0 />
							             				<cfset Seq_Amount = 0 />
							             				<cfset Seq_code = "" />
							             				<!--- Capture sequestration (253) from any CAS segment (claim or service level) --->
							             				<cfloop from="1" to="#arraylen(CLPlines)#" index="casLineIdx">
							             					<cfset casLine = trim(CLPlines[casLineIdx]) />
							             					<cfif len(casLine) GTE 3 AND left(casLine, 3) EQ "CAS">
							             						<cfset CASarray = listToArray(casLine, split_delimiter) />
							             						<cfloop from="3" to="#arrayLen(CASarray)#" step="2" index="casPairIdx">
							             							<cfif arrayIsDefined(CASarray, casPairIdx) AND arrayIsDefined(CASarray, casPairIdx + 1) AND trim(CASarray[casPairIdx]) EQ "253">
							             								<cfset Seq_code = "253" />
							             								<cfset Seq_Amount = CASarray[casPairIdx + 1] />
							             							</cfif>
							             						</cfloop>
							             					</cfif>
							             				</cfloop>
													    <cfif getinvoices.Output EQ 'Medicare'>
													    	<cfset Total_amount =  #CLP[3]# />
													    	<cfset Paid_amount =  #CLP[4]# />
													    	<cfset Adjustment_Amount2  =  0 />
															
													    	<cfloop from="1" to="#arraylen(CLPlines)#" index="p">
 								              					<cfset casLine = trim(CLPlines[p]) />
 								              					<cfif len(casLine) GTE 3 AND left(casLine, 3) EQ "CAS">
									              					<cfset CASarray  =ListToArray(#casLine#,#split_delimiter#)/>
									              					<cfset group_code = CASarray[2] />
								              						<cfset Adjust_code =  CASarray[3] />
								              						<cfset Adjustment_Amount =  CASarray[4] />
												             		<cfbreak>
									              				</cfif>
							              					</cfloop>
							              					<cfset total_adjustcmount = Adjustment_Amount2/>
							              					<cfset cas_count = 0/>
							              					<cfloop from="1" to="#arraylen(CLPlines)#" index="m">
								              					<cfset casLine = trim(CLPlines[m]) />
								              					<cfif len(casLine) GTE 3 AND left(casLine, 3) EQ "CAS">
									              					<cfset CASarray  =ListToArray(#casLine#,#split_delimiter#)/>
								              						<cfset Adjustment_Amounts =  CASarray[4] />
								              						<cfif cas_count GTE 1 >
								              							<cfset total_adjustcmount = total_adjustcmount + Adjustment_Amounts />
								              						</cfif>
								              						<cfset cas_count = cas_count  + 1 >
									              				</cfif>								              				
							              					</cfloop>
							              					<cfset Equations1 = Total_amount - Adjustment_Amount />
							              					<cfset Equations2 = Equations1 - Paid_amount - total_adjustcmount />
							              					<!---<cfdump var="#Equations1#"><br> 
							              					<cfdump var="#Paid_amount#"><br> 
							              					<cfdump var="#total_adjustcmount#"><br> 
							              					<cfdump var="#Equations2#"><br> <br> ---> 
													    <cfelse>

													    	 <cfset Total_amount =  #CLP[3]# />
										             		 <cfif Sgn(Total_amount) EQ '-1' AND getinvoices.Output NEQ 'Medicare'>
										             		 	<cfset Total_amount = Total_amount * (-1) />
										             		 </cfif>
										             		 <cfset Paid_amount =  #CLP[4]# />
										             		 <cfif Sgn(Paid_amount) EQ '-1'>
										             		 	<cfset Paid_amount = Paid_amount * (-1) />
										             		 </cfif>
										             		 <!--- <cfset Remit_No =  #CLP[6]# />
										             		 <cfif Remit_No EQ 'MA'>
										             		 	<cfset Remit_No =  #CLP[7]# />
										             		 </cfif> --->
										             	
										             		 <cfloop from="1" to="#arraylen(CLPlines)#" index="p">
								              					<cfset casLine = trim(CLPlines[p]) />
								              					<cfif len(casLine) GTE 3 AND left(casLine, 3) EQ "CAS">
									              					<cfset CASarray  =ListToArray(#casLine#,#split_delimiter#)/>
									              					<cfset group_code = CASarray[2] />
								              						<cfset Adjust_code =  CASarray[3] />
								              						<cfset Adjustment_Amount =  CASarray[4] />
								              						<cfif Sgn(Adjustment_Amount) EQ '-1'>
												             		 	<cfset Adjustment_Amount = Adjustment_Amount * (-1) />
												             		</cfif>
									              				</cfif>
									              				
							              					</cfloop>

													    </cfif>
 													    <cfif Seq_Amount NEQ 0 AND doninsert NEQ 1>
					              							<cfquery name="updating_Invoices" dataSource="#Application.DataSrc#">
																UPDATE  #Request.prefix_db_agency#.Invoices
																	SET  
																	Seq_Amount =  '#Seq_Amount#',
																	Seq_code  = '#Seq_code#'
																	<!--- ,Updated_by = '#session.employeeid#' --->
																WHERE Internal_control_number = '#Internal_control_number#'
																AND (IFNULL(Invoice_Lock,0) <> 1)
										    		  		</cfquery>
														</cfif>	
														<cfif delete_deposit EQ 1 AND doninsert NEQ 1> 
															<cfquery name="updatepDeposit" dataSource="#Application.DataSrc#"> 
																    UPDATE #Request.prefix_db_agency#.pDeposit 
																    	SET Status = 1,
																    	Record_Modified_Date = #now()#
															    	WHERE Remit_No =  '#Remit_No#'
															    	AND Internal_control_number = '#Internal_control_number#'
															    	AND status =0 
															</cfquery>
															<cfset delete_deposit = 0 >
														</cfif>	


									             		 								             		
						             	 	 	 		<cfset total_paymentamount = 0 />
														<cfset total_WriteOffAmount = 0 />	
														<!--- <cfset Paid_amount = 0 /> --->
														<cfset Net_Total = CLP[4] />
														<cfset toddaydate = #dateformat(now(),"yyyy-mm-dd")# />
														<cfset cron_ids = "">
														<cfquery name="getlats" datasource="#Application.DataSrc#">
                                                            SELECT  IFNULL(MAX(CLP_ID), 0) AS CLPID FROM #Request.prefix_db_lookup#.cron_835
                                                     	</cfquery>
                                                     	<cfset CLP_ID = #getlats.CLPID# + 1 >
									      				<cfloop from="1" to="#arraylen(CLPlines)#" index="i">
									      					<cfset SVC = trim(CLPlines[i]) />
									      					<cfif LEFT(SVC,10) EQ 'CAS*CO*70*'>
																<cfset  CASarry1  =ListToArray(#CLPlines[i]#,#split_delimiter#)/>
						              							<cfset Adjustment_Amount_2 =  CASarry1[4] />
						              							<cfset Adjustment_Code_2 = CASarry1[3] />
						              							<cfset Adjustment_Group_Code_2 = CASarry1[2] />
						              						</cfif>	
							             	 	 			<cfif LEFT(SVC,3) EQ 'SVC'>
										             	 	 	<cfset  SVCarry  =ListToArray(#CLPlines[i]#,#split_delimiter#)/>
								             	 	 	 		<cfif ArrayIsDefined(SVCarry,2)>
								             	 	 	 			<cfset HCPCSIDs = ListToArray(#SVCarry[2]#,"^") />
								             	 	 	 			<cfif ArrayIsDefined(HCPCSIDs,2)>
								             	 	 	 				<cfset HCPCS_ID =  #HCPCSIDs[2]# />
								             	 	 	 			</cfif>	
								             	 	 	 		</cfif>
								             	 	 	 		<cfif ArrayIsDefined(SVCarry,3)>
								             	 	 	 			<cfset SVC03 = SVCarry[3] />
								             	 	 	 		</cfif>
								             	 	 	 		<cfif ArrayIsDefined(SVCarry,4)>
								             	 	 	 			<cfset SVC04 = SVCarry[4] />
								             	 	 	 		</cfif>
								             	 	 	 		<cfif ArrayIsDefined(SVCarry,5)>
								             	 	 	 				<cfset HCPCS_ID =  #SVCarry[5]# />
								             	 	 	 		</cfif>	
								             	 	 	 		<cfif getinvoices.Output EQ 'Medicare' AND  j GT 1>
								             	 	 	 			<cfset Adjustment_Amount = 	#SVC03#/>
								             	 	 	 		<cfelseif  getinvoices.Output NEQ 'Medicare' >
								             	 	 	 			<cfset Adjustment_Amount = 	#SVC03#/>
								             	 	 	 		</cfif>  
								             	 	 	 		<!--- <cfset Paid_amount = #SVC04# /> --->
								             	 	 	 		
								             	 	 	 		<cfset  DTMarry  =ListToArray(#CLPlines[i+1]#,#split_delimiter#)/>
								             	 	 	 		<cfset visitdate = #DTMarry[3]# />
								             	 	 	 		<cfset Visit_Date = createObject("java","java.text.SimpleDateFormat").init("yyyyMMdd").parse(#visitdate#,createObject("java","java.text.ParsePosition").init(0*0)) />             
								              					<cfset Visit_Date = #dateformat(Visit_Date,"yyyy-mm-dd")# />
								              					<cfif getinvoices.Output EQ 'Medicare'>
								              						<cfset CASarry  =ListToArray(#CLPlines[i+2]#,#split_delimiter#)/>
									              					<cfset group_code = CASarry[2] />
								              						<cfset Adjust_code =  CASarry[3] />
								              						<cfset Adjustment_Amount =  CASarry[4] />
								              												              					
												             	<cfelse>
												             		<cfset CASarry  =ListToArray(#CLPlines[i+2]#,#split_delimiter#)/>
									              					<cfset group_code = CASarry[2] />
								              						<cfset Adjust_code =  CASarry[3] />
								              						<cfset Adjustment_Amount =  CASarry[4] />
								              						<cfif Sgn(Adjustment_Amount) EQ '-1'>
												             		 	<cfset Adjustment_Amount = Adjustment_Amount * (-1) />
												             		 </cfif>						              								              				
												             	</cfif>	 


												             	<cfif HCPCS_ID EQ  '0551'>
																	<cfset Skill = 'SN'>
																<cfelseif HCPCS_ID EQ  '0421'>
																	<cfset Skill = 'PT'>
																<cfelseif HCPCS_ID EQ  '0431'>
																	<cfset Skill = 'OT'>
																<cfelseif HCPCS_ID EQ  '0440' OR HCPCS_ID EQ  '0441' >
																	<cfset Skill = 'ST'>
																<cfelseif HCPCS_ID EQ  '0561'>
																	<cfset Skill = 'MSW'>
																<cfelseif HCPCS_ID EQ  '0571'>
																	<cfset Skill = 'HHA'>
																<cfelse>
																	<cfset Skill = 'SN'>
																</cfif>
																<cfif  doninsert NEQ 1>
																	 <cfquery name="updating_pSchedules" dataSource="#Application.DataSrc#">
																        UPDATE #Request.prefix_db_agency#.pSchedules
																	     SET  payment = '#Paid_amount#',
																	        write_offamount =  '#Adjustment_Amount#',
																	        write_offcode =  '#group_code#',
																	        write_offcodesecond =  '#Adjust_code#',
																	        Date_Change = #now()#
																		WHERE Status = 0
																		AND Visit_Date = '#Visit_Date#'
																		AND Skill = '#Skill#'
																		AND Patient_ID = '#getinvoices.Patient_ID#'
																	</cfquery>
																</cfif> 
																 <cfquery name="getsch" dataSource="#Application.DataSrc#">
																        SELECT * FROM #Request.prefix_db_agency#.pSchedules 
																        WHERE Status = 0
																		AND Visit_Date = '#Visit_Date#'
																		AND Skill = '#Skill#'
																		AND Patient_ID = '#getinvoices.Patient_ID#'
																	</cfquery>

								              					<tr>
								              						<td>#getinvoices.Pt_Last#, #getinvoices.Pt_First#</td>
																	<td>#dateformat(Date_Deposit,"yyyy-mm-dd")#</td>
																	<td>#Deposit_Type#</td>
																	<td>#dateformat(Date_Check,"yyyy-mm-dd")#</td>
																	<td>#Remit_No#</td>
																	<td>#Internal_control_number#</td>
																	<td>#Left(getinvoices.Pay_Name,30)#..</td>	
																	<td>#getinvoices.Output#</td>														
																	<td>#Visit_Date#</td>
																	<td>#HCPCS_ID#</td>
																	<!--- <td>#SVC03#</td>
																	<td>#SVC04#</td> --->
																	<td>#Total_amount# </td>
																	<td><cfif total_paymentamount EQ 0 AND getinvoices.Output EQ 'Medicare'>#Paid_amount#</cfif></td>
																	<td>#Adjustment_Amount#</td>
																	<td>#group_code#</td>
																	<td>#Adjust_code#</td>
																	<td><cfif Seq_Amount NEQ 0 >#Seq_Amount#</cfif></td>
																	<td><cfif Seq_Amount NEQ 0 >#Seq_code#</cfif></td>
																</tr>

																<cfif getinvoices.Output EQ 'Medicare'>
																	<cfset total_paymentamount =  Paid_amount />
																<cfelse>
																	<cfset total_paymentamount = total_paymentamount + Paid_amount />
																</cfif>
											    				<cfset total_WriteOffAmount = total_WriteOffAmount + Adjustment_Amount />

											    				<cfset Patient_Name = #getinvoices.Pt_Last#& ", " & #getinvoices.Pt_First# />
											    				 <cfquery name="INSERT_CRON" dataSource="#Application.DataSrc#">
																         INSERT IGNORE into #Request.prefix_db_lookup#.cron_835
																			(Agency_ID, Patient_ID, Schedule_ID, Invoice_ID, 
																				Payer_ID, batch, Patient_Name, Date_Deposit, 
																				Deposit_Type,Check_Total, Date_Check, Remit_No, ICN, Pay_Name, Payer_Type,
																				 Visit_Date, Revenue_Code, Net_Total, Paid_Amount, Adjustment_Amount,
																				 Dep_Writeoff_Amount, 
																				 Adjustment_Group_Code, Adjustment_Code, 
																				 <cfif Seq_Amount NEQ 0 >
																					 Seq_Amount, Seq_Code,
																				 </cfif>
																				 <cfif Adjustment_Code_2 NEQ ''>
																				 	Adjustment_Code_2,Adjustment_Group_Code_2,Adjustment_Amount_2,
																				</cfif>
																				 total_paymentamount,total_WriteOffAmount,
																				  file_name, Date_Create, Craeted_By)
																		VALUES 
																			('#agencynumber[1]#','#getinvoices.Patient_ID#',
																				'#getsch.Schedule_ID#','#getinvoices.Invoice_ID#',
																				'#getinvoices.PatientPayer_ID#',1, '#Patient_Name#','#dateformat(Date_Deposit,"yyyy-mm-dd")#',
																				'#Deposit_Type#','#Check_Total#','#dateformat(Date_Check,"yyyy-mm-dd")#','#Remit_No#','#Internal_control_number#',
																				'#Left(getinvoices.Pay_Name,30)#','#getinvoices.Output#','#Visit_Date#','#HCPCS_ID#','#Total_amount#',
																				'#Paid_amount#','#Adjustment_Amount#','#Amount_Writeoff#','#group_code#','#Adjust_code#',
																				<cfif Seq_Amount NEQ 0 >
																					'#Seq_Amount#','#Seq_code#',
																				</cfif>
																				<cfif Adjustment_Code_2 NEQ ''>
																					'#Adjustment_Code_2#','#Adjustment_Group_Code_2#','#Adjustment_Amount_2#',
																				</cfif>

																				'#total_paymentamount#','#total_WriteOffAmount#',
 																				'#name2#',#now()#, 2)
																	</cfquery> 	

																	<cfquery datasource="#Application.DataSrc#" name="Last_cron">
																      <cfsetting requesttimeout="5000">
																	    	SELECT LAST_INSERT_ID() as LastInsertID
																    </cfquery>
																    <cfset cron_ids = listappend(cron_ids,#Last_cron.LastInsertID#) />
															</cfif>	
															
									             	 	</cfloop>
									             		 
									             	 	 <cfif getinvoices.Invoice_ID NEQ '' and len(cron_ids) gt 0>
															<cfquery name="update_cron" dataSource="#Application.DataSrc#"> 
															   UPDATE #Request.prefix_db_lookup#.cron_835 
															    	SET CLP_ID = '#CLP_ID#' 
														    	WHERE  ID IN (#cron_ids#)
														    	AND status = 0
															</cfquery>	
									             	 	 </cfif>
									             	 	 
														<cfif doninsert NEQ 1>										
														 <cfquery name="insertpDeposit" dataSource="#Application.DataSrc#">
													         INSERT IGNORE into #Request.prefix_db_agency#.pDeposit
																(Date_Deposit,Payer_ID, Date_Create,Date_Check, Deposit_Type, Check_Total, Remit_No,
																Internal_Control_number,HCPCS,SVC04,SVC03,Writeoff_Amount,Visit_Date,
																Pay_Name, Net_Total,  Record_Created_Date, Record_Modified_Date)
															VALUES 
																('#Date_Deposit#','#getinvoices.PatientPayer_ID#','#toddaydate#','#Date_Check#','#Deposit_Type#', '#Check_Total#','#Remit_No#',
																'#Internal_control_number#','#HCPCS_ID#','#SVC04#','#SVC03#','#Amount_Writeoff#','#Visit_Date#',
																'#Pay_Name#','#Net_Total#', #now()#,#now()#)
														</cfquery> 	
														</cfif>							              									             
													    <cfset final_amount =   total_paymentamount + total_WriteOffAmount />
													    <cfif getinvoices.Invoice_ID NEQ '' AND doninsert NEQ 1>
													    	<cfquery name="update_payments" dataSource="#Application.DataSrc#"> 
															    	UPDATE #Request.prefix_db_agency#.Payments 
															    	SET Deleted = 1,
															    	Record_Modified_Date = #now()#
														    	WHERE Invoice_ID =  '#getinvoices.Invoice_ID#'
														    	AND EFT_No = '#Remit_No#' 
														    	AND Amount = '#total_paymentamount#'  
														    	AND WriteOffAmount = '#total_WriteOffAmount#'
														    	AND (IFNULL(Payment_Lock,0) <> 1)
															</cfquery>	
															<cfquery name="Insert_Payments" dataSource="#Application.DataSrc#"> 
															    	INSERT INTO #Request.prefix_db_agency#.Payments(
															    		 Invoice_ID, PatientPayer_ID, PaymentDate, Amount, PaymentMethod, EFT_Amount, EFT_No, Claim,
															    		  Comments, WriteOffAmount, WriteOffType, Deleted, Internal_control_number)
																	 VALUES 
																		('#getinvoices.Invoice_ID#','#getinvoices.PatientPayer_ID#','#Date_Deposit#', '#total_paymentamount#','Electronic','#Check_Total#',
																			'#Remit_No#',
																		'#Internal_control_number#','Auto claim payment processing', '#total_WriteOffAmount#','#Adjust_code#',
																		0, '#Internal_control_number#')
															</cfquery>
														</cfif> 
													</cfif>
													</cfif>
										  		</cfloop>
												 <cfcatch>
													<cflog file="cronjob" type="Error" 
													text="Failure of 835 file of #name2#; Error: #cfcatch.Message# #cfcatch.Detail#">
												</cfcatch>
											</cftry>
										<cfelseif ArrayLen(thirdlinearray) GTE 2 AND thirdlinearray[2] EQ '277'>
											<!--- <cfinclude template="cron_277.cfm" /> --->
										</cfif>
									</cfif>
									</cfif>
									
		                        </cfloop>
					    	</cfoutput> 
					    </tbody>
					</table>
				</div>
			</div>

			<cfif NOT isNonProdServer>
			   <cfloop from="1" to="#dirlist.recordCount#" index="k">
			     	<cfset filepath = "/Upload/remits/" />
					<cfset name2 = #dirlist.name[k]# />
					<cfset filepath2 = filepath&name2 >
					<cfif (Right(name2,4) eq  '.835')>
						<cfftp Connection="objConnection" Action="Remove" Item="/outgoing/remits/#name2#">  
					</cfif>
			 	</cfloop>
			</cfif>
<cfftp action="close" connection="objConnection" />
<cfcatch type="any">
	<cflog file="store_835" type="Error" text="835 staging import failed (#sftpAccountLabel#): #cfcatch.message# #cfcatch.detail#" />
	<cftry><cfftp action="close" connection="objConnection" /><cfcatch></cfcatch></cftry>
</cfcatch>
</cftry>
</cfloop>