private void WriteFile(string pstrFilePathAndName, string pstrString) { Scripting.FileSystemObject fs = new Scripting.FileSystemObject(); Scripting.TextStream ts = null; if (fs.FileExists(pstrFilePathAndName)) { ts = fs.OpenTextFile(pstrFilePathAndName, Scripting.IOMode.ForWriting); } else { ts = fs.CreateTextFile(pstrFilePathAndName); } ts.Write(pstrString); ts.Close(); }
private Shell32.Folder dir; /// フォルダオブジェクト /// <summary> /// コンストラクタ /// </summary> /// <param name="path">出力先パス</param> public Zip(string path) { this.path = path; if (String.Compare(Path.GetExtension(path), ".zip", true) != 0) { zip = Path.ChangeExtension(path, ".zip"); } else { zip = path; } Scripting.FileSystemObject fso = new Scripting.FileSystemObject(); Scripting.TextStream ts = fso.CreateTextFile(zip, true, false); ts.Write("PK\x05\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"); ts.Close(); sh = new Shell32.Shell(); dir = sh.NameSpace(this.zip); }
private void cmdScale_Click(System.Object eventSender, System.EventArgs eventArgs) { string mySQL = null; ADODB.Recordset rsScale = default(ADODB.Recordset); ADODB.Recordset rsData = default(ADODB.Recordset); string lString = ""; string lFormat = null; string HeadingString1 = null; string HeadingString2 = null; string lWeighted = null; Scripting.FileSystemObject FSO = new Scripting.FileSystemObject(); Scripting.TextStream lTextstreamC = default(Scripting.TextStream); // ERROR: Not supported in C#: OnErrorStatement rsScale = modRecordSet.getRS(ref "SELECT Scale.* FROM Scale;"); while (!(rsScale.EOF)) { if (My.MyProject.Forms.frmUpdatePOScriteria.frmType[0].Visible == true) { mySQL = "SELECT Right('0000'+[Catalogue_Barcode],4) AS code, Format([CatalogueChannelLnk_Price],'Fixed') AS price, StockItem.StockItem_Name, StockGroup.StockGroup_Name, StockItem.StockItem_NonWeighted FROM POSUpdate_PriceChangeSummary INNER JOIN ((StockItem INNER JOIN (CatalogueChannelLnk INNER JOIN Catalogue ON (CatalogueChannelLnk.CatalogueChannelLnk_StockItemID = Catalogue.Catalogue_StockItemID) AND (CatalogueChannelLnk.CatalogueChannelLnk_Quantity = Catalogue.Catalogue_Quantity)) ON StockItem.StockItemID = Catalogue.Catalogue_StockItemID) INNER JOIN StockGroup ON StockItem.StockItem_StockGroupID = StockGroup.StockGroupID) ON POSUpdate_PriceChangeSummary.CatalogueChannelLnk_StockItemID = StockItem.StockItemID WHERE (((CatalogueChannelLnk.CatalogueChannelLnk_ChannelID)=1) AND ((Catalogue.Catalogue_Quantity)=1) AND ((StockItem.StockItem_Disabled)=False) AND ((StockItem.StockItem_VariablePrice)=True));"; } else { mySQL = "SELECT Right('0000'+[Catalogue_Barcode],4) AS code, Format([CatalogueChannelLnk_Price],'Fixed') AS price, StockItem.StockItem_Name, StockGroup.StockGroup_Name, StockItem.StockItem_NonWeighted FROM (StockItem INNER JOIN (CatalogueChannelLnk INNER JOIN Catalogue ON (CatalogueChannelLnk.CatalogueChannelLnk_Quantity = Catalogue.Catalogue_Quantity) AND (CatalogueChannelLnk.CatalogueChannelLnk_StockItemID = Catalogue.Catalogue_StockItemID)) ON StockItem.StockItemID = Catalogue.Catalogue_StockItemID) INNER JOIN StockGroup ON StockItem.StockItem_StockGroupID = StockGroup.StockGroupID WHERE (((CatalogueChannelLnk.CatalogueChannelLnk_ChannelID)=1) AND ((Catalogue.Catalogue_Quantity)=1) AND ((StockItem.StockItem_Disabled)=False) AND ((StockItem.StockItem_VariablePrice)=True));"; } rsData = modRecordSet.getRS(ref mySQL); // Select Case rsScale("Scale_format") // Case 0 // rsData.MoveFirst // Do Until rsData.EOF // HeadingString1 = Left(rsData("Stockitem_Name"), 16) // HeadingString2 = "" // If Len(rsData("Stockitem_Name")) > 16 Then // Do Until Right(HeadingString1, 1) = " " // HeadingString1 = Left(HeadingString1, Len(HeadingString1) - 1) // Loop // HeadingString2 = Mid(rsData("Stockitem_Name"), Len(HeadingString1) + 1) // End If // HeadingString1 = Left(HeadingString1 & String(16, " "), 16) // HeadingString2 = Left(HeadingString2 & String(16, " "), 16) // If rsData("StockItem_NonWeighted") Then lWeighted = "01" Else lWeighted = "00" // lstring = lstring & vbCrLf & "#" & rsData("code") & "$" & rsData("price") & "%#000%$" & lWeighted & "%(A" & HeadingString1 & "%)A" & HeadingString2 & "%[" & Left(rsData("StockGroup_Name") & String(15, " "), 15) // rsData.moveNext // Loop // Case 1 rsData.MoveFirst(); while (!(rsData.EOF)) { HeadingString1 = Strings.Left(rsData.Fields("Stockitem_Name").Value, 16); //16 was 22 HeadingString2 = ""; //16 was 22 if (Strings.Len(rsData.Fields("Stockitem_Name").Value) > 16) { while (!(Strings.Right(HeadingString1, 1) == " " | string.IsNullOrEmpty(HeadingString1))) { HeadingString1 = Strings.Left(HeadingString1, Strings.Len(HeadingString1) - 1); } HeadingString2 = Strings.Mid(rsData.Fields("Stockitem_Name").Value, Strings.Len(HeadingString1) + 1); } HeadingString1 = Strings.Left(HeadingString1 + new string(" ", 16), 16); //16 was 22 HeadingString2 = Strings.Left(HeadingString2 + new string(" ", 22), 22); //16 was 22 if (rsData.Fields("StockItem_NonWeighted").Value) { lWeighted = "01"; } else { lWeighted = "00"; } // lstring = lstring & vbCrLf & "%*0 #" & rsData("code") & " $" & Right("00000" & Replace(rsData("price"), ".", ""), 5) & " %#000 %$" & lWeighted & "%&" & rsScale("ScaleID") & rsData("code") & " %(A" & HeadingString1 & " %)A" & HeadingString2 & " %[" & Left(rsData("StockGroup_Name") & String(15, " "), 15) & " %]" & String(15, " ") & " %~" //If lString = "" Then // lString = "%*0 #" & rsData("code") & " $" & Right("00000" & FormatNumber(rsData("price"), 2), 6) & " %#000 %& %(A" & HeadingString1 & " %)A" & HeadingString2 & " %$" & lWeighted //Else lString = lString + Constants.vbCrLf + "%*0 #" + rsData.Fields("code").Value + " $" + Strings.Right("00000" + Strings.FormatNumber(rsData.Fields("price").Value, 2), 6) + " %#000 %& %(A" + HeadingString1 + " %)A" + HeadingString2 + " %$" + lWeighted; //End If rsData.moveNext(); } // End Select //FOR NEW SCALE ITEMS if (My.MyProject.Forms.frmUpdatePOScriteria.frmType[0].Visible == true) { //UPGRADE_WARNING: Couldn't resolve default property of object mySQL. Click for more: 'ms-help://MS.VSCC.v90/dv_commoner/local/redirect.htm?keyword="6A50421D-15FE-4896-8A1B-2EC21E9037B2"' mySQL = "SELECT Right('0000'+[Catalogue_Barcode],4) AS code, Format([CatalogueChannelLnk_Price],'Fixed') AS price, StockItem.StockItem_Name, StockGroup.StockGroup_Name, StockItem.StockItem_NonWeighted FROM POSUpdate_PriceNewSummary INNER JOIN ((StockItem INNER JOIN (CatalogueChannelLnk INNER JOIN Catalogue ON (CatalogueChannelLnk.CatalogueChannelLnk_StockItemID = Catalogue.Catalogue_StockItemID) AND (CatalogueChannelLnk.CatalogueChannelLnk_Quantity = Catalogue.Catalogue_Quantity)) ON StockItem.StockItemID = Catalogue.Catalogue_StockItemID) INNER JOIN StockGroup ON StockItem.StockItem_StockGroupID = StockGroup.StockGroupID) ON POSUpdate_PriceNewSummary.CatalogueChannelLnk_StockItemID = StockItem.StockItemID WHERE (((CatalogueChannelLnk.CatalogueChannelLnk_ChannelID)=1) AND ((Catalogue.Catalogue_Quantity)=1) AND ((StockItem.StockItem_Disabled)=False) AND ((StockItem.StockItem_VariablePrice)=True));"; rsData = modRecordSet.getRS(ref mySQL); rsData.MoveFirst(); while (!(rsData.EOF)) { HeadingString1 = Strings.Left(rsData.Fields("Stockitem_Name").Value, 16); //16 was 22 HeadingString2 = ""; //16 was 22 if (Strings.Len(rsData.Fields("Stockitem_Name").Value) > 16) { while (!(Strings.Right(HeadingString1, 1) == " " | string.IsNullOrEmpty(HeadingString1))) { HeadingString1 = Strings.Left(HeadingString1, Strings.Len(HeadingString1) - 1); } HeadingString2 = Strings.Mid(rsData.Fields("Stockitem_Name").Value, Strings.Len(HeadingString1) + 1); } HeadingString1 = Strings.Left(HeadingString1 + new string(" ", 16), 16); //16 was 22 HeadingString2 = Strings.Left(HeadingString2 + new string(" ", 22), 22); //16 was 22 if (rsData.Fields("StockItem_NonWeighted").Value) { lWeighted = "01"; } else { lWeighted = "00"; } lString = lString + Constants.vbCrLf + "%*0 #" + rsData.Fields("code").Value + " $" + Strings.Right("00000" + Strings.FormatNumber(rsData.Fields("price").Value, 2), 6) + " %#000 %& %(A" + HeadingString1 + " %)A" + HeadingString2 + " %$" + lWeighted; rsData.moveNext(); } } if (FSO.FileExists(rsScale.Fields("Scale_Path").Value)) { FSO.DeleteFile(rsScale.Fields("Scale_Path").Value); } if (Strings.Len(lString)) { lTextstreamC = FSO.CreateTextFile(rsScale.Fields("Scale_Path").Value, true); Debug.Print(Strings.Trim(Strings.Left(lString, Strings.Len(lString) - 1))); lTextstreamC.Write(Strings.Mid(lString, 3)); lTextstreamC.Close(); //Open rsScale("Scale_Path") For Output As #7 //Print #7, mID(lString, 3, Len(lString) - 5) //Close #7 if (FSO.FileExists(modRecordSet.serverPath + "teraoka.bat")) { Interaction.Shell(modRecordSet.serverPath + "teraoka.bat", AppWinStyle.MinimizedNoFocus); } } rsScale.moveNext(); } modRecordSet.cnnDB.Execute("UPDATE Scale SET Scale.Scale_Update = False;"); }
private void cmdScale_Click(System.Object eventSender, System.EventArgs eventArgs) { string mySQL = null; ADODB.Recordset rsScale = default(ADODB.Recordset); ADODB.Recordset rsData = default(ADODB.Recordset); string lString = ""; string lFormat = null; string HeadingString1 = null; string HeadingString2 = null; string lWeighted = null; Scripting.FileSystemObject FSO = new Scripting.FileSystemObject(); Scripting.TextStream lTextstreamC = default(Scripting.TextStream); // ERROR: Not supported in C#: OnErrorStatement rsScale = modRecordSet.getRS(ref "SELECT Scale.* FROM Scale;"); while (!(rsScale.EOF)) { if (My.MyProject.Forms.frmUpdatePOScriteria.frmType[0].Visible == true) { mySQL = "SELECT Right('0000'+[Catalogue_Barcode],4) AS code, Format([CatalogueChannelLnk_Price],'Fixed') AS price, StockItem.StockItem_Name, StockGroup.StockGroup_Name, StockItem.StockItem_NonWeighted FROM POSUpdate_PriceChangeSummary INNER JOIN ((StockItem INNER JOIN (CatalogueChannelLnk INNER JOIN Catalogue ON (CatalogueChannelLnk.CatalogueChannelLnk_StockItemID = Catalogue.Catalogue_StockItemID) AND (CatalogueChannelLnk.CatalogueChannelLnk_Quantity = Catalogue.Catalogue_Quantity)) ON StockItem.StockItemID = Catalogue.Catalogue_StockItemID) INNER JOIN StockGroup ON StockItem.StockItem_StockGroupID = StockGroup.StockGroupID) ON POSUpdate_PriceChangeSummary.CatalogueChannelLnk_StockItemID = StockItem.StockItemID WHERE (((CatalogueChannelLnk.CatalogueChannelLnk_ChannelID)=1) AND ((Catalogue.Catalogue_Quantity)=1) AND ((StockItem.StockItem_Disabled)=False) AND ((StockItem.StockItem_VariablePrice)=True));"; } else { mySQL = "SELECT Right('0000'+[Catalogue_Barcode],4) AS code, Format([CatalogueChannelLnk_Price],'Fixed') AS price, StockItem.StockItem_Name, StockGroup.StockGroup_Name, StockItem.StockItem_NonWeighted FROM (StockItem INNER JOIN (CatalogueChannelLnk INNER JOIN Catalogue ON (CatalogueChannelLnk.CatalogueChannelLnk_Quantity = Catalogue.Catalogue_Quantity) AND (CatalogueChannelLnk.CatalogueChannelLnk_StockItemID = Catalogue.Catalogue_StockItemID)) ON StockItem.StockItemID = Catalogue.Catalogue_StockItemID) INNER JOIN StockGroup ON StockItem.StockItem_StockGroupID = StockGroup.StockGroupID WHERE (((CatalogueChannelLnk.CatalogueChannelLnk_ChannelID)=1) AND ((Catalogue.Catalogue_Quantity)=1) AND ((StockItem.StockItem_Disabled)=False) AND ((StockItem.StockItem_VariablePrice)=True));"; } rsData = modRecordSet.getRS(ref mySQL); // Select Case rsScale("Scale_format") // Case 0 // rsData.MoveFirst // Do Until rsData.EOF // HeadingString1 = Left(rsData("Stockitem_Name"), 16) // HeadingString2 = "" // If Len(rsData("Stockitem_Name")) > 16 Then // Do Until Right(HeadingString1, 1) = " " // HeadingString1 = Left(HeadingString1, Len(HeadingString1) - 1) // Loop // HeadingString2 = Mid(rsData("Stockitem_Name"), Len(HeadingString1) + 1) // End If // HeadingString1 = Left(HeadingString1 & String(16, " "), 16) // HeadingString2 = Left(HeadingString2 & String(16, " "), 16) // If rsData("StockItem_NonWeighted") Then lWeighted = "01" Else lWeighted = "00" // lstring = lstring & vbCrLf & "#" & rsData("code") & "$" & rsData("price") & "%#000%$" & lWeighted & "%(A" & HeadingString1 & "%)A" & HeadingString2 & "%[" & Left(rsData("StockGroup_Name") & String(15, " "), 15) // rsData.moveNext // Loop // Case 1 rsData.MoveFirst(); while (!(rsData.EOF)) { HeadingString1 = Strings.Left(rsData.Fields("Stockitem_Name").Value, 16); //16 was 22 HeadingString2 = ""; //16 was 22 if (Strings.Len(rsData.Fields("Stockitem_Name").Value) > 16) { while (!(Strings.Right(HeadingString1, 1) == " " | string.IsNullOrEmpty(HeadingString1))) { HeadingString1 = Strings.Left(HeadingString1, Strings.Len(HeadingString1) - 1); } HeadingString2 = Strings.Mid(rsData.Fields("Stockitem_Name").Value, Strings.Len(HeadingString1) + 1); } HeadingString1 = Strings.Left(HeadingString1 + new string(" ", 16), 16); //16 was 22 HeadingString2 = Strings.Left(HeadingString2 + new string(" ", 22), 22); //16 was 22 if (rsData.Fields("StockItem_NonWeighted").Value) lWeighted = "01"; else lWeighted = "00"; // lstring = lstring & vbCrLf & "%*0 #" & rsData("code") & " $" & Right("00000" & Replace(rsData("price"), ".", ""), 5) & " %#000 %$" & lWeighted & "%&" & rsScale("ScaleID") & rsData("code") & " %(A" & HeadingString1 & " %)A" & HeadingString2 & " %[" & Left(rsData("StockGroup_Name") & String(15, " "), 15) & " %]" & String(15, " ") & " %~" //If lString = "" Then // lString = "%*0 #" & rsData("code") & " $" & Right("00000" & FormatNumber(rsData("price"), 2), 6) & " %#000 %& %(A" & HeadingString1 & " %)A" & HeadingString2 & " %$" & lWeighted //Else lString = lString + Constants.vbCrLf + "%*0 #" + rsData.Fields("code").Value + " $" + Strings.Right("00000" + Strings.FormatNumber(rsData.Fields("price").Value, 2), 6) + " %#000 %& %(A" + HeadingString1 + " %)A" + HeadingString2 + " %$" + lWeighted; //End If rsData.moveNext(); } // End Select //FOR NEW SCALE ITEMS if (My.MyProject.Forms.frmUpdatePOScriteria.frmType[0].Visible == true) { //UPGRADE_WARNING: Couldn't resolve default property of object mySQL. Click for more: 'ms-help://MS.VSCC.v90/dv_commoner/local/redirect.htm?keyword="6A50421D-15FE-4896-8A1B-2EC21E9037B2"' mySQL = "SELECT Right('0000'+[Catalogue_Barcode],4) AS code, Format([CatalogueChannelLnk_Price],'Fixed') AS price, StockItem.StockItem_Name, StockGroup.StockGroup_Name, StockItem.StockItem_NonWeighted FROM POSUpdate_PriceNewSummary INNER JOIN ((StockItem INNER JOIN (CatalogueChannelLnk INNER JOIN Catalogue ON (CatalogueChannelLnk.CatalogueChannelLnk_StockItemID = Catalogue.Catalogue_StockItemID) AND (CatalogueChannelLnk.CatalogueChannelLnk_Quantity = Catalogue.Catalogue_Quantity)) ON StockItem.StockItemID = Catalogue.Catalogue_StockItemID) INNER JOIN StockGroup ON StockItem.StockItem_StockGroupID = StockGroup.StockGroupID) ON POSUpdate_PriceNewSummary.CatalogueChannelLnk_StockItemID = StockItem.StockItemID WHERE (((CatalogueChannelLnk.CatalogueChannelLnk_ChannelID)=1) AND ((Catalogue.Catalogue_Quantity)=1) AND ((StockItem.StockItem_Disabled)=False) AND ((StockItem.StockItem_VariablePrice)=True));"; rsData = modRecordSet.getRS(ref mySQL); rsData.MoveFirst(); while (!(rsData.EOF)) { HeadingString1 = Strings.Left(rsData.Fields("Stockitem_Name").Value, 16); //16 was 22 HeadingString2 = ""; //16 was 22 if (Strings.Len(rsData.Fields("Stockitem_Name").Value) > 16) { while (!(Strings.Right(HeadingString1, 1) == " " | string.IsNullOrEmpty(HeadingString1))) { HeadingString1 = Strings.Left(HeadingString1, Strings.Len(HeadingString1) - 1); } HeadingString2 = Strings.Mid(rsData.Fields("Stockitem_Name").Value, Strings.Len(HeadingString1) + 1); } HeadingString1 = Strings.Left(HeadingString1 + new string(" ", 16), 16); //16 was 22 HeadingString2 = Strings.Left(HeadingString2 + new string(" ", 22), 22); //16 was 22 if (rsData.Fields("StockItem_NonWeighted").Value) lWeighted = "01"; else lWeighted = "00"; lString = lString + Constants.vbCrLf + "%*0 #" + rsData.Fields("code").Value + " $" + Strings.Right("00000" + Strings.FormatNumber(rsData.Fields("price").Value, 2), 6) + " %#000 %& %(A" + HeadingString1 + " %)A" + HeadingString2 + " %$" + lWeighted; rsData.moveNext(); } } if (FSO.FileExists(rsScale.Fields("Scale_Path").Value)) FSO.DeleteFile(rsScale.Fields("Scale_Path").Value); if (Strings.Len(lString)) { lTextstreamC = FSO.CreateTextFile(rsScale.Fields("Scale_Path").Value, true); Debug.Print(Strings.Trim(Strings.Left(lString, Strings.Len(lString) - 1))); lTextstreamC.Write(Strings.Mid(lString, 3)); lTextstreamC.Close(); //Open rsScale("Scale_Path") For Output As #7 //Print #7, mID(lString, 3, Len(lString) - 5) //Close #7 if (FSO.FileExists(modRecordSet.serverPath + "teraoka.bat")) Interaction.Shell(modRecordSet.serverPath + "teraoka.bat", AppWinStyle.MinimizedNoFocus); } rsScale.moveNext(); } modRecordSet.cnnDB.Execute("UPDATE Scale SET Scale.Scale_Update = False;"); }
private static void buildScaleFile() { ADODB.Recordset rsScale = default(ADODB.Recordset); ADODB.Recordset rsData = default(ADODB.Recordset); string lString = null; string lFormat = null; string HeadingString1 = null; string HeadingString2 = null; string lWeighted = null; Scripting.FileSystemObject fso = new Scripting.FileSystemObject(); Scripting.TextStream lTextstream = default(Scripting.TextStream); // ERROR: Not supported in C#: OnErrorStatement rsScale = modRecordSet.getRS(ref "SELECT Scale.* FROM Scale;"); while (!(rsScale.EOF)) { rsData = modRecordSet.getRS(ref "SELECT Right('0000'+[Catalogue_Barcode],4) AS code, Format([CatalogueChannelLnk_Price],'Fixed') AS price, StockItem.StockItem_Name, StockGroup.StockGroup_Name, StockItem.StockItem_NonWeighted FROM (StockItem INNER JOIN (CatalogueChannelLnk INNER JOIN Catalogue ON (CatalogueChannelLnk.CatalogueChannelLnk_Quantity = Catalogue.Catalogue_Quantity) AND (CatalogueChannelLnk.CatalogueChannelLnk_StockItemID = Catalogue.Catalogue_StockItemID)) ON StockItem.StockItemID = Catalogue.Catalogue_StockItemID) INNER JOIN StockGroup ON StockItem.StockItem_StockGroupID = StockGroup.StockGroupID WHERE (((CatalogueChannelLnk.CatalogueChannelLnk_ChannelID)=1) AND ((Catalogue.Catalogue_Quantity)=1) AND ((StockItem.StockItem_Disabled)=False) AND ((StockItem.StockItem_VariablePrice)=True));"); switch (rsScale.Fields("Scale_format").Value) { case 0: rsData.MoveFirst(); while (!(rsData.EOF)) { HeadingString1 = Strings.Left(rsData.Fields("Stockitem_Name").Value, 16); HeadingString2 = ""; if (Strings.Len(rsData.Fields("Stockitem_Name").Value) > 16) { while (!(Strings.Right(HeadingString1, 1) == " ")) { HeadingString1 = Strings.Left(HeadingString1, Strings.Len(HeadingString1) - 1); } HeadingString2 = Strings.Mid(rsData.Fields("Stockitem_Name").Value, Strings.Len(HeadingString1) + 1); } HeadingString1 = Strings.Left(HeadingString1 + new string(" ", 16), 16); HeadingString2 = Strings.Left(HeadingString2 + new string(" ", 16), 16); if (rsData.Fields("StockItem_NonWeighted").Value) lWeighted = "01"; else lWeighted = "00"; lString = lString + Constants.vbCrLf + "#" + rsData.Fields("code").Value + "$" + rsData.Fields("price").Value + "%#000%$" + lWeighted + "%(A" + HeadingString1 + "%)A" + HeadingString2 + "%[" + Strings.Left(rsData.Fields("StockGroup_Name").Value + new string(" ", 15), 15); rsData.moveNext(); } break; case 1: rsData.MoveFirst(); while (!(rsData.EOF)) { HeadingString1 = Strings.Left(rsData.Fields("Stockitem_Name").Value, 22); HeadingString2 = ""; if (Strings.Len(rsData.Fields("Stockitem_Name").Value) > 22) { while (!(Strings.Right(HeadingString1, 1) == " " | string.IsNullOrEmpty(HeadingString1))) { HeadingString1 = Strings.Left(HeadingString1, Strings.Len(HeadingString1) - 1); } HeadingString2 = Strings.Mid(rsData.Fields("Stockitem_Name").Value, Strings.Len(HeadingString1) + 1); } HeadingString1 = Strings.Left(HeadingString1 + new string(" ", 22), 22); HeadingString2 = Strings.Left(HeadingString2 + new string(" ", 21), 21); if (rsData.Fields("StockItem_NonWeighted").Value) lWeighted = "01"; else lWeighted = "00"; lString = lString + Constants.vbCrLf + " %*0 #" + rsData.Fields("code").Value + " $" + Strings.Right("00000" + Strings.Replace(rsData.Fields("price").Value, ".", ""), 5) + " %#000 %$" + lWeighted + "%&" + rsScale.Fields("ScaleID").Value + rsData.Fields("code").Value + " %(A" + HeadingString1 + " %)A" + HeadingString2 + " %[" + Strings.Left(rsData.Fields("StockGroup_Name").Value + new string(" ", 15), 15) + " %]" + new string(" ", 15) + " %~"; rsData.moveNext(); } break; } if (fso.FileExists(rsScale.Fields("Scale_Path").Value)) fso.DeleteFile(rsScale.Fields("Scale_Path").Value); if (Strings.Len(lString)) { lTextstream = fso.CreateTextFile(rsScale.Fields("Scale_Path").Value, true); lTextstream.Write(Strings.Mid(lString, 3)); lTextstream.Close(); } rsScale.moveNext(); } }