Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 SQL Server 2005 Forums
 Transact-SQL (2005)
 compilation errors in procedure

Author  Topic 

rajasekhar857
Constraint Violating Yak Guru

396 Posts

Posted - 2009-06-02 : 03:11:59
hi this is my procedure getting errors like this.

create PROCEDURE UPDATE_SCREENIMMUNDATA1 AS
DECLARE
@currentGroupID NUMERIC(20,0),
@currentScreenImmunID NUMERIC(20,0),
@currentScreenImmunMasterID NUMERIC(20,0),
@currentScreenImmunRecordType VARCHAR(2),
@seedScreenImmunID NUMERIC(20,0),
@updateQuery1 VARCHAR(4000),
@updateQuery2 VARCHAR(4000),
@insertQuery VARCHAR(4000),
@propertyName VARCHAR(50),
@SCREEN_IMMUN_ID NUMERIC(20,0),
@RECORD_TYPE VARCHAR(2),
@GENDER NUMERIC(20,0),
@SUB_GENDER NUMERIC(20,0),
@DESCRIPTION VARCHAR(500),
@STARTING_AGE_OPERATOR VARCHAR(255),
@STARTING_AGE_VALUE NUMERIC(20,0),
@STARTING_AGE_UNITS VARCHAR(255),
@FREQUENCY VARCHAR(500),
@STARTING_AGE_LIMIT_RANGE NUMERIC(20,0),
@STARTING_AGE_LIMIT_UNITS VARCHAR(255),
@AGE_END_LIMIT NUMERIC(20,0),
@AGE_END_LIMIT_UNITS VARCHAR(255),
@REPEAT INT,
@REPEAT_AGE_VALUE NUMERIC(20,0),
@REPEAT_AGE_UNITS VARCHAR(255),
@FREQUENCY_LIMIT NUMERIC(20,0),
@REPEAT_CONDITION VARCHAR(255),
@GROUP_ID NUMERIC(20,0),
@STATUS NUMERIC(5,0),
@CDC_CODE VARCHAR(50),
@SCREEN_COMMENTS VARCHAR(255),
@MASTER_REFERENCE_ID NUMERIC(20,0)
BEGIN
Declare ezEMRxGroups CURSOR for SELECT GROUP_ID FROM EMRGROUPMASTER WHERE STATUS = 1
Declare ezEMRxScreenImmunRecords CURSOR for SELECT * FROM EMRSCREENIMMUNLKUP WHERE GROUP_ID = 0
ORDER BY SCREEN_IMMUN_ID

--Data Migration for group specific screenings and immunizations records.
SELECT @currentScreenImmunID INTO ezEMRxID FROM EMRIDS WHERE PROPERTY_NAME = 'SCREEN_IMMUN_ID'
OPEN ezEMRxGroups
FETCH NEXT FROM ezEMRxGroups INTO @currentGroupID
WHILE @@FETCH_Status = 0
OPEN ezEMRxScreenImmunRecords
FETCH NEXT FROM ezEMRxScreenImmunRecords INTO @SCREEN_IMMUN_ID, @RECORD_TYPE,@GENDER,@SUB_GENDER,@DESCRIPTION,@STARTING_AGE_OPERATOR,
@STARTING_AGE_VALUE,@STARTING_AGE_UNITS,@FREQUENCY,@STARTING_AGE_LIMIT_RANGE,@STARTING_AGE_LIMIT_UNITS,
@AGE_END_LIMIT,@AGE_END_LIMIT_UNITS,@REPEAT,@REPEAT_AGE_VALUE,@REPEAT_AGE_UNITS,@FREQUENCY_LIMIT,
@REPEAT_CONDITION, @GROUP_ID,@STATUS,@CDC_CODE,@SCREEN_COMMENTS,@MASTER_REFERENCE_ID
WHILE @@FETCH_Status = 0


--updateQuery1 := 'UPDATE EMRSCREENIMMUNLKUP SET SCREEN_IMMUN_ID = ' + currentScreenImmunID + ' WHERE SCREEN_IMMUN_ID = ' + currentScreenImmunMasterID
SET @MASTER_REFERENCE_ID = @SCREEN_IMMUN_ID
SET @SCREEN_IMMUN_ID = @currentScreenImmunID
SET @GROUP_ID = @currentGroupID
INSERT INTO EMRSCREENIMMUNLKUP VALUES (@SCREEN_IMMUN_ID, @RECORD_TYPE,@GENDER,@SUB_GENDER,@DESCRIPTION,@STARTING_AGE_OPERATOR,
@STARTING_AGE_VALUE,@STARTING_AGE_UNITS,@FREQUENCY,@STARTING_AGE_LIMIT_RANGE,@STARTING_AGE_LIMIT_UNITS,
@AGE_END_LIMIT,@AGE_END_LIMIT_UNITS,@REPEAT,@REPEAT_AGE_VALUE,@REPEAT_AGE_UNITS,@FREQUENCY_LIMIT,
@REPEAT_CONDITION, @GROUP_ID,@STATUS,@CDC_CODE,@SCREEN_COMMENTS,@MASTER_REFERENCE_ID)
SET @updateQuery1 = 'UPDATE EMRPatientScreeningDetails SET SCREENING_REFERENCE_ID = ' + @currentScreenImmunID + ' WHERE PATIENT_ID IN ( SELECT DISTINCT PATIENT_ID FROM EMRPATIENTSMASTER WHERE LOCATION_ID IN ( SELECT DISTINCT LOCATION_ID FROM EMRLOCATIONMASTER WHERE GROUP_ID = ' + @currentGroupID + '))'
SET @updateQuery2 = 'UPDATE EMRPatientImmunizationDetails SET IMMUNIZATION_REFERENCE_ID = ' + @currentScreenImmunID + ' WHERE PATIENT_ID IN ( SELECT DISTINCT PATIENT_ID FROM EMRPATIENTSMASTER WHERE LOCATION_ID IN ( SELECT DISTINCT LOCATION_ID FROM EMRLOCATIONMASTER WHERE GROUP_ID = ' + @currentGroupID + '))'

EXEC @updateQuery1
EXEC @updateQuery2


SET @currentScreenImmunID = @currentScreenImmunID + 1
END
CLOSE ezEMRxScreenImmunRecords

END
CLOSE ezEMRxGroups
SET @updateQuery1 = 'update emrids set ezemrxid = ' + @seedScreenImmunID + ' where property_name = ''' + @propertyName + ''''
EXEC @updateQuery1
END



errors are:

Msg 156, Level 15, State 1, Procedure UPDATE_SCREENIMMUNDATA1, Line 72
Incorrect syntax near the keyword 'CLOSE'.
Msg 102, Level 15, State 1, Procedure UPDATE_SCREENIMMUNDATA1, Line 75
Incorrect syntax near 'END'.

can anyone help me out and give the corrected ones

SwePeso
Patron Saint of Lost Yaks

30421 Posts

Posted - 2009-06-02 : 03:35:36
What is wrong with the suggestion I posted here?
http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=126809



E 12°55'05.63"
N 56°04'39.26"
Go to Top of Page
   

- Advertisement -