///<summary>Supply claimnums. Called from X12 to begin the sorting process on claims going to one clearinghouse.</summary> public static List <X12TransactionItem> GetX12TransactionInfo(List <long> claimNums) //ArrayList queueItemss){ { if (RemotingClient.RemotingRole == RemotingRole.ClientWeb) { return(Meth.GetObject <List <X12TransactionItem> >(MethodBase.GetCurrentMethod(), claimNums)); } StringBuilder str = new StringBuilder(); for (int i = 0; i < claimNums.Count; i++) { if (i > 0) { str.Append(" OR"); } str.Append(" claim.ClaimNum=" + POut.Long(claimNums[i])); //((ClaimSendQueueItem)queueItems[i]).ClaimNum.ToString()); } string command; command = "SELECT carrier.ElectID,claim.ProvBill,inssub.Subscriber," + "claim.PatNum,claim.ClaimNum,CASE WHEN inssub.Subscriber!=claim.PatNum THEN 1 ELSE 0 END AS subscNotPatient " + "FROM claim,insplan,inssub,carrier " + "WHERE claim.PlanNum=insplan.PlanNum " + "AND claim.InsSubNum=inssub.InsSubNum " + "AND carrier.CarrierNum=insplan.CarrierNum " + "AND (" + str.ToString() + ") " + "ORDER BY carrier.ElectID,claim.ProvBill,inssub.Subscriber,subscNotPatient,claim.PatNum"; DataTable table = Db.GetTable(command); List <X12TransactionItem> retVal = new List <X12TransactionItem>(); //object[,] myA=new object[5,table.Rows.Count]; X12TransactionItem item; for (int i = 0; i < table.Rows.Count; i++) { item = new X12TransactionItem(); item.PayorId0 = PIn.String(table.Rows[i][0].ToString()); item.ProvBill1 = PIn.Long(table.Rows[i][1].ToString()); item.Subscriber2 = PIn.Long(table.Rows[i][2].ToString()); item.PatNum3 = PIn.Long(table.Rows[i][3].ToString()); item.ClaimNum4 = PIn.Long(table.Rows[i][4].ToString()); retVal.Add(item); } return(retVal); }
///<summary>Supply claimnums. Called from X12 to begin the sorting process on claims going to one clearinghouse.</summary> public static List<X12TransactionItem> GetX12TransactionInfo(List<long> claimNums) {//ArrayList queueItemss){ if(RemotingClient.RemotingRole==RemotingRole.ClientWeb) { return Meth.GetObject<List<X12TransactionItem>>(MethodBase.GetCurrentMethod(),claimNums); } List<X12TransactionItem> retVal=new List<X12TransactionItem>(); if(claimNums.Count<1) { return retVal; } string command; command="SELECT carrier.ElectID,claim.ProvBill,inssub.Subscriber," +"claim.PatNum,claim.ClaimNum,CASE WHEN inssub.Subscriber!=claim.PatNum THEN 1 ELSE 0 END AS subscNotPatient " +"FROM claim,insplan,inssub,carrier " +"WHERE claim.PlanNum=insplan.PlanNum " +"AND claim.InsSubNum=inssub.InsSubNum " +"AND carrier.CarrierNum=insplan.CarrierNum " +"AND claim.ClaimNum IN ("+String.Join(",",claimNums)+") " +"ORDER BY carrier.ElectID,claim.ProvBill,inssub.Subscriber,subscNotPatient,claim.PatNum"; DataTable table=Db.GetTable(command); //object[,] myA=new object[5,table.Rows.Count]; X12TransactionItem item; for(int i=0;i<table.Rows.Count;i++){ item=new X12TransactionItem(); item.PayorId0=PIn.String(table.Rows[i][0].ToString()); item.ProvBill1=PIn.Long (table.Rows[i][1].ToString()); item.Subscriber2=PIn.Long (table.Rows[i][2].ToString()); item.PatNum3=PIn.Long (table.Rows[i][3].ToString()); item.ClaimNum4=PIn.Long (table.Rows[i][4].ToString()); retVal.Add(item); } return retVal; }