Showing posts with label 837. Show all posts
Showing posts with label 837. Show all posts
Wednesday, February 8, 2017
MYSQL Stored Procedure for EDI 837 P 5010 Version
MYSQL Stored Procedure for EDI 837 P 5010 Version
Here is a sample Stored Procedure which is used to generate Loop 2010BB. For complete List, please email me at vbsenthilinnet@gmail.com
DELIMITER $$
DROP PROCEDURE IF EXISTS `Loop2010BB`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `Loop2010BB`(pclaimNo INT, patientInsID LONG)
BEGIN
DECLARE varReturnValue VARCHAR(5000);
DECLARE fieldSep VARCHAR(10);
DECLARE varname VARCHAR(100);
DECLARE varaddress1 VARCHAR(100);
DECLARE varaddress2 VARCHAR(100);
DECLARE varcity VARCHAR(30);
DECLARE varstate VARCHAR(10);
DECLARE varzip VARCHAR(20);
DECLARE varpayerID VARCHAR(50);
DECLARE varLastBilledInfo VARCHAR(500);
DECLARE varInsCode VARCHAR(50);
SET fieldSep= *;
SET varReturnValue = ;
SELECT
IFNULL(ins.Code,), IFNULL(ins.name,),IFNULL(ins.address1,),IFNULL(ins.address2,),
IFNULL(ins.city,),IFNULL(ins.state,),IFNULL(ins.zip,),IFNULL(ins.payerID,)
INTO
varInsCode, varname,varaddress1,varaddress2,varcity,varstate,varzip,varpayerID
FROM
patientinsurance patins, insurance ins
WHERE
patins.ID = patientInsID
AND
patins.insuranceID = ins.ID;
SET varLastBilledInfo = CONCAT(:,varInsCode,:,varname,:,varpayerID);
SET varReturnValue = CONCAT(varReturnValue,NM1,fieldSep);
/*
Page No : 131
Loop No : 2010BB
Loop Name : PAYER NAME
Segment Name : NM1 Individual or Organizational Name
Data Element : NM101 - Entity Identifier Code
*/
SET varReturnValue = CONCAT(varReturnValue,PR,fieldSep);
/*
Page No : 131
Loop No : 2010BB
Loop Name : PAYER NAME
Segment Name : NM1 Individual or Organizational Name
Data Element : NM102 - Entity Type Qualifier
*/
SET varReturnValue = CONCAT(varReturnValue,2,fieldSep);
SET varReturnValue = CONCAT(varReturnValue,varname,fieldSep);
/*
Page No : 131
Loop No : 2010BB
Loop Name : PAYER NAME
Segment Name : NM1 Individual or Organizational Name
Data Element : NM104,NM105,NM106,NM107
NOT USED
*/
SET varReturnValue = CONCAT(varReturnValue,fieldSep);
SET varReturnValue = CONCAT(varReturnValue,fieldSep);
SET varReturnValue = CONCAT(varReturnValue,fieldSep);
SET varReturnValue = CONCAT(varReturnValue,fieldSep);
/*
Page No : 131
Loop No : 2010BB
Loop Name : PAYER NAME
Segment Name : NM1 Individual or Organizational Name
Data Element : NM108,NM109
*/
SET varReturnValue = CONCAT(varReturnValue,PI,fieldSep);
SET varReturnValue = CONCAT(varReturnValue,varpayerID,~);
IF varAddress1 <> THEN
#2010BB Payer Address
SET varReturnValue = CONCAT(varReturnValue,N3,fieldSep);
#N301 Address Line 1
SET varReturnValue = CONCAT(varReturnValue,varAddress1);
#N302 Address Line 2
IF IFNULL(varAddress2,) <> THEN
SET varReturnValue = CONCAT(varReturnValue,fieldSep,varAddress2,~);
ELSE
SET varReturnValue = CONCAT(varReturnValue,~);
END IF;
END IF;
IF varCity <> THEN
#2010BB Payer City/State/Zip code
SET varReturnValue = CONCAT(varReturnValue,N4,fieldSep);
#N401 City Name
SET varReturnValue = CONCAT(varReturnValue,varCity,fieldSep);
#N402 State
SET varReturnValue = CONCAT(varReturnValue,varState,fieldSep);
#N402 Zip
SET varReturnValue = CONCAT(varReturnValue,varzip,~);
END IF;
UPDATE claimheader SET tmpLastBilledInfo = CONCAT(IFNULL(tmpLastBilledInfo,) ,varLastBilledInfo)
WHERE claimNo = pclaimNo;
UPDATE claimdetail SET tmpLastBilledInfo = CONCAT(IFNULL(tmpLastBilledInfo,) ,varLastBilledInfo)
WHERE claimNo = pclaimNo AND claimTranModeInsID = patientInsID;
SELECT varReturnValue;
END$$
DELIMITER ;
Available link for download
Subscribe to:
Posts (Atom)