Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
SCAN is running twice, I think
Message
From
03/09/2008 20:41:36
Jay Johengen
Altamahaw-Ossipee, North Carolina, United States
 
 
To
03/09/2008 20:24:45
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Environment versions
Visual FoxPro:
VFP 9 SP2
OS:
Vista
Network:
Windows 2008 Server
Database:
MS SQL Server
Miscellaneous
Thread ID:
01344695
Message ID:
01344700
Views:
10
Not a silly question at all. Now that I checked and it wasn't empty. It was supposed to be, but that's another story. Thanks!

>I can't spot anything in the code so here goes a perhaps silly question. Are you sure that EligBatch is actually empty when you open it? Best I can offer is what you know. Put a stop on RECCOUNT('EligBatch') in the debugger to find when the records get added.
>
>
>>It looks like a lot of code, but I think it's probably something simple. The SELECT creates a cursor of 15 records. Then the SCAN happens. Towards the end
>>of the SCAN, and INSERT is done to the EligBatch table. After the SCAN, there are 30 records in that table. Two identical sets of the original 15 from the SQL.
>>
>>				oValidateResponse = CREATEOBJECT('Empty')
>>				SELECT ;
>>					S_Pat_Num, ;
>>					S_Pat_Name, ;
>>					m.Disp_Date AS DOSBegin, ;
>>					m.Disp_Date AS DOSEnd, ;
>>					SPACE(50) AS BatchStat ;
>>					FROM Schedule ;
>>					WHERE S_Date = m.Disp_Date AND ;
>>					S_New_Pat = .F. AND ;
>>					!EMPTY(S_Pat_Num) AND ;
>>					ALLTRIM(S_Pat_Num) <> 'New....' ;
>>					GROUP BY 1,2,3,4,5 ;
>>					INTO CURSOR EligibilityDailyBatch READWRITE
>>				SCAN
>>					tPatNum = EligibilityDailyBatch.S_Pat_Num
>>					DO GetEligibilityValidationInfo WITH tPatNum, m.Disp_Date, m.Disp_Date
>>					SELECT EligibilityValidation
>>					IF RECCOUNT('EligibilityValidation') > 0
>>						IF !USED('CovrForEligibility')
>>							USE ( m_data_dir ) + 'COVR' ALIAS CovrForEligibility AGAIN IN 0
>>						ENDIF
>>						SELECT CovrForEligibility
>>						LOCATE FOR ALLTRIM(CovrForEligibility.Pat_No) = ALLTRIM(EligibilityValidation.PtPn) AND CovrForEligibility.CvPs = 'P'
>>						IF FOUND()
>>							dEligValidTo = EligibilityValidation.BeginDateOfService
>>							IF CheckEligibilityRules(tPatNum, CovrForEligibility.CvCarr, EligibilityValidation.BeginDateOfService, EligibilityValidation.EndDateOfService, @dEligValidTo)
>>								m.Success = .T.
>>								TextRequestMessage = ''
>>								DO EligibilityValidation WITH ;
>>									EligibilityValidation.ptpn, ;
>>									EligibilityValidation.BeginDateOfService, ;
>>									EligibilityValidation.EndDateOfService, ;
>>									m.Success, ;
>>									TextRequestMessage
>>								IF m.Success
>>									oValidateResponse = EligibilityValidation_Worklist(EligibilityValidation.BeginDateOfService,EligibilityValidation.EndDateOfService,TextRequestMessage)
>>								ELSE
>>									m.BatchStatus = 'Unable to connect to Payor.'
>>								ENDIF
>>								IF !USED('CovrForEligibility')
>>									USE ( m_data_dir ) + 'COVR' ALIAS CovrForEligibility AGAIN IN 0
>>								ENDIF
>>								SELECT CovrForEligibility
>>								LOCATE FOR ALLTRIM(CovrForEligibility.Pat_No) = ALLTRIM(EligibilityValidation.PtPn) AND CovrForEligibility.CvPs = 'P'
>>								REPLACE CovrForEligibility.EligDate WITH IIF(m.Success,oValidateResponse.LastValidationDate,DATE())
>>								REPLACE CovrForEligibility.EligStat_S WITH IIF(m.Success,oValidateResponse.SubEligibilityStatus,'Failed')
>>								REPLACE CovrForEligibility.EligStat_D WITH IIF(m.Success,oValidateResponse.DepEligibilityStatus,'Failed')
>>								REPLACE CovrForEligibility.EligValid WITH IIF(m.Success,dEligValidTo,{})
>>								REPLACE CovrForEligibility.EligReport WITH IIF(m.Success,oValidateResponse.EligReport,CovrForEligibility.EligReport)
>>								REPLACE CovrForEligibility.EligDetail WITH IIF(m.Success,oValidateResponse.EligDetail,CovrForEligibility.EligDetail)
>>								REPLACE CovrForEligibility.EligRawMsg WITH IIF(m.Success,oValidateResponse.EligRawMsg,CovrForEligibility.EligRawMsg)
>>								m.BatchStatus = CovrForEligibility.EligStat_S
>>							ELSE
>>								m.BatchStatus = 'Unable to validate per eligibility rules.'
>>							ENDIF
>>						ENDIF
>>					ELSE
>>						m.BatchStatus = 'Unable to verify patient coverage.'
>>					ENDIF
>>					SELECT EligibilityDailyBatch
>>					REPLACE EligibilityDailyBatch.BatchStat WITH m.BatchStatus
>>					IF !USED('EligBatch')
>>						USE (m_prom_dir) + 'EligBatch' IN 0
>>					ENDIF
>>					INSERT INTO EligBatch (;
>>						PatNum, ;
>>						PatName, ;
>>						DOSBegin, ;
>>						DOSEnd, ;
>>						BatchStat) ;
>>						VALUES (;
>>						EligibilityDailyBatch.S_Pat_Num, ;
>>						EligibilityDailyBatch.S_Pat_Name, ;
>>						EligibilityDailyBatch.DOSBegin, ;
>>						EligibilityDailyBatch.DOSEnd, ;
>>						EligibilityDailyBatch.BatchStat)
>>				ENDSCAN
>>				oValidateResponse = NULL
>>				RELEASE oValidateResponse
>>				WAIT CLEAR
>>				=MESSAGEBOX('Eligibility Daily Batch Completed')
>>
Previous
Reply
Map
View

Click here to load this message in the networking platform