Sage 2011 integration for MASC and Wrap
We have updated our programs to support Sage 2011 version 17
Please call us before you upgrade to ensure you have the correct software version
We have updated our programs to support Sage 2011 version 17
Please call us before you upgrade to ensure you have the correct software version
To load a BOM into SAP we needed to create a XML file with a hierarchy of the BOM.
To start this project in Access you will need to set a reference to ChilkatXML and have a recordset for the BOM items.
Function Make_SAP_XML() Dim xml As New ChilkatXml Dim MT_TPC_BOM As ChilkatXml Dim ProductHeader As ChilkatXml Dim Systems As ChilkatXml Dim System As ChilkatXml Dim SystemItems As ChilkatXml Dim SystemItem As ChilkatXml Dim ATOComponents As ChilkatXml Dim ATOComponent As ChilkatXml Dim rst As Recordset Dim tmpSystemLine As Integer Dim tmpSystem As String, tmpOrder Dim tmpItemNo As Integer, tmpOrderLine As Integer xml.Tag = "MT_TPC_BOM" xml.AddAttribute "xmlns:nr1", "http://siebel.com/contract_to_order" Set ProductHeader = xml.NewChild("ProductHeader", "") 'set the header values ProductHeader.NewChild2 "ConfigSource", "TPC" ProductHeader.NewChild2 "TPCVersion", "7.3k" ProductHeader.NewChild2 "TPCInternalDate", Format(Date, "mm/dd/yyyy") ProductHeader.NewChild2 "TPCEngInfoDate", Format(Date, "mm/dd/yyyy") ProductHeader.NewChild2 "TPCEngInfoFileVersion", "1.0" ProductHeader.NewChild2 "CommerciallyComplete", "Y" ProductHeader.NewChild2 "CurrencyCode", "EUR" Set Systems = ProductHeader.NewChild("Systems", "") Set rst = CurrentDb.OpenRecordset("tblBOM_Records") If rst.RecordCount = 0 Then MsgBox "Nothing to Process" GoTo Exit_Func Exit Function Else rst.MoveFirst End If tmpSystemLine = 0 tmpSystem = "" Do While Not rst.EOF If tmpOrder <> rst![Order Number] Then ' new section tmpOrderLine = 1 tmpItemNo = 1 Set System = Systems.NewChild("System", "") System.NewChild2 "SystemNumber", tmpSystemLine System.NewChild2 "SystemName", "SYSTEM_ASSY" System.NewChild2 "SystemIDNumber", rst![Order Number] & "." & tmpSystemLine System.NewChild2 "Quantity", "1" Set SystemItems = System.NewChild("SystemItems", "") End If If tmpSystem <> rst![Lot_code_Sap] Then tmpSystemLine = tmpSystemLine + 1 Set SystemItem = SystemItems.NewChild("SystemItem", "") SystemItem.NewChild2 "OriginalItemNumber", tmpOrderLine & "." & tmpSystemLine SystemItem.NewChild2 "Product", rst![Lot_code_Sap] SystemItem.NewChild2 "Description", rst![Order Number] SystemItem.NewChild2 "Quantity", 1 Set ATOComponents = SystemItem.NewChild("ATOComponents", "") tmpItemNo = 1 End If Set ATOComponent = ATOComponents.NewChild("ATOComponent", "") ATOComponent.NewChild2 "ATOItemNumber", tmpOrderLine & "." & tmpSystemLine & "." & tmpItemNo ATOComponent.NewChild2 "Product", rst!Product ATOComponent.NewChild2 "Description", rst![Product type] ATOComponent.NewChild2 "Quantity", rst!Qty ATOComponent.NewChild2 "UnitCost", "0" tmpOrder = rst![Order Number] tmpSystem = rst![Lot_code_Sap] tmpItemNo = tmpItemNo + 1 rst.MoveNext ' goto the next line Loop ' Save the XML: Dim success As Long success = xml.SaveXml("c:SAP_XML_Test.xml") If (success <> 1) Then MsgBox xml.LastErrorText End If Exit_Func: Set rst = Nothing Set ProductHeader = Nothing Set Systems = Nothing Set System = Nothing Set SystemItems = Nothing Set ATOComponents = Nothing Set ATOComponent = Nothing End Function
We will be attending the Catex Exhibition in the RDS on the 8, 9 and 10th of February, presenting the latest features of our Van sales system and demonstrating the integration to Sage and Intact.
You can visit us at Stand C34
We have had a number of issues with Access database giving the following error
[ODBC][Ora]ORA-01013: user requested cancel of current operation
Assuming you can access the ODBC database source directly the issue can be fixed by changing the Access query properties. Click on the query and select design , right click in the query and select properties, change the value for ODBC Timeout from 60 to 0( 0 is no timeout)
Save the query and retry.
Some of our clients were having issues with date entry in various applications since the 1st of Jan
The issue relates to how windows interprets a 2 digit year. Under control panel, regional and language, click on customize , then click on the date tab. The first section the calendar shows the range of years used to interpret the 2 digit year. This was set to 1911 to 2010 on some PC’s- when they entered a date for 2011 as 2 digits windows converted the year to 1911.
To fix this simply move the year to 2050.
We have updated our sage links for MASC and Wrap. The invoice upload routine has a number of new options which can increase the upload speed of your invoices into sage dramatically.
For more details contact our office http://www.e-ms.ie/contact.htm
This is a link to the Aceeca user guide
http://handheld.ie/dl/mez1000.pdf
See page 2 for the hard reset command.
I was first introduced to GREP in the early 90’s by Joe Sims!
http://www.wingrep.com very useful
Our custom PDF printer has a flaw which requires the user to configure the printer to print directly to the file otherwise the reports are spooled and printed into the incorrect name.
I used this function to check the setting and warn the user
Function GetPrinter() If fReturnRegKeyValue(HKEY_LOCAL_MACHINE, "SOFTWAREMicrosoftWindows NTCurrentVersionPrintPrintersEMS PDFDsSpooler", "printSpooling") = "PrintWhileSpooling" Then MsgBox "Your printer is not configured correctly. " & vbCrLf & "change the advanced setting to print directly to the printer" Else MsgBox "Your Setting is correct:" & fReturnRegKeyValue(HKEY_LOCAL_MACHINE, "SOFTWAREMicrosoftWindows NTCurrentVersionPrintPrintersEMS PDFDsSpooler", "printSpooling") End If End Function
This uses the function from the access web
If you received this error after uninstalling Chrome (or Firefox) browser you may also need to change the HTM/HTML association in the registry.
1. Start, click Run, type Regedit in the Open box, and then click OK.
2. Browse to HKEY_CURRENT_USERSoftwareClasses.html
3. Right click the value for the .html key and select Modify…
4. Change the value from “ChromeHTML” to “htmlfile” (or from FireFoxHTML to htmlfile)
Repeat these steps for htm and .shtml keys if they exist.