Custom MtlTag Print qty error

Hi,

Trying to add tag print in to count tag entry.
Seems it works while qty is an integer type, but when it is decimal I get an exception, can anyone advice how to deal with it?
Exception:
image

Normal MtlTag print trace:

<paramDataSet name="ds" useDataSetNbr="0">
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="TagFormat"><![CDATA[PUR-STK]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="TotalQty"><![CDATA[9,14000000]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="QtyPer"><![CDATA[9,14000000]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="PartNum"><![CDATA[800100]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="Revision"><![CDATA[--]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="PartDesc"><![CDATA[METALO LAUZAS]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="UnitOfMeasure"><![CDATA[kg]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="JobNum"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AssemblySeq"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="OprSeq"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="PONum"><![CDATA[85052]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="POLine"><![CDATA[1]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="PORel"><![CDATA[1]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="VendorNum"><![CDATA[338]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="PurPoint"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="RefJob"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="RefAssemblySeq"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="RefMtlSeq"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="NonConfTranID"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="ReasonCode"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="ReasonType"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="Comment"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="WarehouseCode"><![CDATA[SND]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="BinNum"><![CDATA[000]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="LotNum"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="ItemTags"><![CDATA[9.14000000`1]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="JobSeqType"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="BarCodes"><![CDATA[False]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="LegalNumber"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="PCID"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="DMRNum"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="TagQty"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="TagNumber"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="MtlQueueSeq"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AttributeSetID"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AttributeSetShortDescription"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AttributeValueSeq"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="DispNumberOfPieces"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AttributeSetIDList"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AttributeSetShortDescList"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AttributeValueSeqList"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="NumberOfPiecesList"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="QtyPerContainerList"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AttributeSetClassID"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="TotalQtyUOM"><![CDATA[kg]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AttributeSetTotalQtyList"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AttributeSetUOMList"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="SysRowID"><![CDATA[00000000-0000-0000-0000-000000000000]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AutoAction"><![CDATA[SSRSPREVIEW]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="PrinterName"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AgentSchedNum"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AgentID"><![CDATA[SystemAgent]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AgentTaskNum"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="RecurringTask"><![CDATA[False]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="RptPageSettings"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="RptPrinterSettings"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="RptVersion"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="ReportStyleNum"><![CDATA[1012]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="WorkstationID"><![CDATA[SFU-PC118 1]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="TaskNote"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="ArchiveCode"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="DateFormat"><![CDATA[yyyy-mm-dd]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="NumericFormat"><![CDATA[.,]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AgentCompareString"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="ProcessID"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="ProcessCompany"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="ProcessSystemCode"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="ProcessTaskNum"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="DecimalsGeneral"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="DecimalsCost"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="DecimalsPrice"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="GlbDecimalsGeneral"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="GlbDecimalsCost"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="GlbDecimalsPrice"><![CDATA[0]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="FaxSubject"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="FaxTo"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="FaxNumber"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="EMailTo"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="EMailCC"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="EMailBCC"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="EMailBody"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="AttachmentType"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="ReportCurrencyCode"><![CDATA[EUR]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="ReportCultureCode"><![CDATA[lt-LT]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="SSRSRenderFormat"><![CDATA[PDF]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="UIXml"><![CDATA[]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="PrintReportParameters"><![CDATA[False]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="SSRSEnableRouting"><![CDATA[False]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="DesignMode"><![CDATA[False]]></changedValue>
      <changedValue tableName="MtlTagsParam" rowState="Added" rowNum="0" colName="RowMod"><![CDATA[A]]></changedValue>
    </paramDataSet>

My script:

private void PrintSingle_Click(object sender, System.EventArgs args)
	{
		// ** Place Event Handling Code Here **
	try
        {
			string def_printer = DefaultPrinterName();
			MessageBox.Show(def_printer);
			string agentID = "";
			 using (var asa = new SysAgentAdapter(oTrans))
	        {
	            //oTrans.PushStatusText("Get System Agent Info", true);
	            asa.BOConnect();
	            asa.GetDefaultTaskAgentID(out agentID);
	            if (string.IsNullOrEmpty(agentID)) { agentID = "SystemTaskAgent"; }
	        }
EpiDataView edv = (EpiDataView)(oTrans.EpiDataViews["tagView"]);
String singlePartNum = edv.dataView[edv.Row]["PartNum"].ToString();
String singlePartDesc = edv.dataView[edv.Row]["PartNumPartDescription"].ToString();
String singleBinNum = edv.dataView[edv.Row]["BinNum"].ToString();
String singleUOM = edv.dataView[edv.Row]["UOM"].ToString();
decimal singleCountedQty = Convert.ToDecimal(edv.dataView[edv.Row]["CountedQty"]);
String singleWhseCode = edv.dataView[edv.Row]["WarehouseCode"].ToString();



			MtlTagsAdapter mtlTags = new MtlTagsAdapter(oTrans);
			mtlTags.BOConnect();
			//Get Paramters
			mtlTags.GetNewParameters();
			//Set Parameters
			mtlTags.ReportData.MtlTagsParam[0].TagFormat = "";
			mtlTags.ReportData.MtlTagsParam[0].TotalQty = singleCountedQty;
			mtlTags.ReportData.MtlTagsParam[0].QtyPer = singleCountedQty;
			mtlTags.ReportData.MtlTagsParam[0].PartNum = singlePartNum;
			mtlTags.ReportData.MtlTagsParam[0].Revision = "";
			mtlTags.ReportData.MtlTagsParam[0].PartDesc = singlePartDesc;
			mtlTags.ReportData.MtlTagsParam[0].UnitOfMeasure = singleUOM;
			mtlTags.ReportData.MtlTagsParam[0].AssemblySeq = 0;
			mtlTags.ReportData.MtlTagsParam[0].OprSeq = 0;
			mtlTags.ReportData.MtlTagsParam[0].PONum = 0;
			mtlTags.ReportData.MtlTagsParam[0].POLine = 0;
			mtlTags.ReportData.MtlTagsParam[0].PORel = 0;
			mtlTags.ReportData.MtlTagsParam[0].VendorNum = 0;
			mtlTags.ReportData.MtlTagsParam[0].RefAssemblySeq = 0;
			mtlTags.ReportData.MtlTagsParam[0].RefMtlSeq = 0;
			mtlTags.ReportData.MtlTagsParam[0].NonConfTranID = 0;
			mtlTags.ReportData.MtlTagsParam[0].ReasonCode = "";
			mtlTags.ReportData.MtlTagsParam[0].ReasonType = "";
			mtlTags.ReportData.MtlTagsParam[0].WarehouseCode = "SFU";
			mtlTags.ReportData.MtlTagsParam[0].BinNum = "000";
			mtlTags.ReportData.MtlTagsParam[0].ItemTags = singleCountedQty.ToString() + "`1";
			mtlTags.ReportData.MtlTagsParam[0].JobSeqType = "";
			//mtlTags.ReportData.MtlTagsParam[0].AutoAction = "SSRSClientPrint";
			mtlTags.ReportData.MtlTagsParam[0].AutoAction = "SSRSPREVIEW";
			mtlTags.ReportData.MtlTagsParam[0].PrinterName = def_printer;
			mtlTags.ReportData.MtlTagsParam[0].AgentSchedNum = 0;
			mtlTags.ReportData.MtlTagsParam[0].AgentID = agentID;
			mtlTags.ReportData.MtlTagsParam[0].RecurringTask = false;
			mtlTags.ReportData.MtlTagsParam[0].RptPageSettings = "Color=False,Landscape=True,AutoRotate=False,PaperSize=[Kind=\"A4\" PaperName=\"A4\" Height=1169 Width=827],PaperSource=[SourceName=\"Printer auto select\" Kind=\"Custom\"],PrinterResolution=[Kind=\"Custom\" X=600 Y=600]";
            mtlTags.ReportData.MtlTagsParam[0].RptPrinterSettings = "PrinterName=\"" + def_printer + "\",Copies=1,Collate=True,Duplex=Vertical,FromPage=1,ToPage=0";
			mtlTags.ReportData.MtlTagsParam[0].ReportStyleNum = 1002; // cia keisti
			mtlTags.ReportData.MtlTagsParam[0].WorkstationID = Environment.MachineName + " " + Process.GetCurrentProcess().SessionId.ToString();
			mtlTags.ReportData.MtlTagsParam[0].ArchiveCode = 0;
			mtlTags.ReportData.MtlTagsParam[0].DateFormat = "yyyy.mm.dd";
			mtlTags.ReportData.MtlTagsParam[0].NumericFormat = ".,";
			mtlTags.ReportData.MtlTagsParam[0].ProcessTaskNum = 0;
			mtlTags.ReportData.MtlTagsParam[0].DecimalsGeneral = 0;
			mtlTags.ReportData.MtlTagsParam[0].DecimalsCost = 0;
			mtlTags.ReportData.MtlTagsParam[0].DecimalsPrice = 0;
			mtlTags.ReportData.MtlTagsParam[0].GlbDecimalsGeneral = 0;
			mtlTags.ReportData.MtlTagsParam[0].GlbDecimalsCost = 0;
			mtlTags.ReportData.MtlTagsParam[0].GlbDecimalsPrice = 0;
			mtlTags.ReportData.MtlTagsParam[0].ReportCurrencyCode = "LTL";
			mtlTags.ReportData.MtlTagsParam[0].ReportCultureCode = "lt-LT";
			mtlTags.ReportData.MtlTagsParam[0].RowMod = "A";
			mtlTags.ReportData.MtlTagsParam.Columns.Add("EmpID", Type.GetType("System.String"));
			mtlTags.ReportData.MtlTagsParam[0]["EmpID"] = "Vardas pavarde";
			//Submit to Agent
			mtlTags.SubmitToAgent(agentID,0,0);
			MessageBox.Show("EtiketÄ— persiĹłsta ÄŻ numatytÄ…jÄŻ spausdintuvÄ…");
		}
		catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
	}

UPDATE
I guess issue comes from decimal separator. If I add to dataset manualy with dot plus M like this QtyPer = 9.14000000M; then it works, but if I take value from epidataview I get this number separated with comma, 9,14000000. How to fix this if dataset value has to be placed as decimal? I tried to use globalization settings but could’nt manage to make it work properly.

Found, this string has to be converted:
MtlTagsParam[0].ItemTags = singleCountedQty.ToString().Replace(“,”,“.”)+ “`1”;