Blog

Eugene about his business trip to Spain

All the first week from 7 to 19 I was in the office, there was no chance to see the town. I was fascinated by the weather and plenty of tangerine-trees, whose fruit is uneatable as people say. On Friday the departure was planned later so I could appreciate the view from the window: neat houses and mountains covered in snow. Unfortunately photos do not convey the real impression at all. On Saturday I had some time for sightseeing. I went [...]

Read more...

Road show in Russia and Europe

December 2017 was rich with business trips and meetings. We visited Latvia, Moscow, St Petersburg and Bulgaria. Meeting with a potential customer in Latvia At the end of November we met our potential client, a large diary producer. We had an opportunity to tell about our experience and what we can offer. The Meetings in Moscow and St Petersburg There is nothing like personal meetings with customers 🙂  This time our guys got a lot of useful info (that is not always the [...]

Read more...

Trust, but do not betray your principles

How small business shall work with major contracts. Opinion of Ruslan Kafiatullin from Neti. Projects from scratch are always risky As a rule, implementation projects from scratch are always accompanied by rough duration estimate (from 6 months) and high risks of non-payment by client on the outcome. Consequently, it leads to risk of bankruptcy of the whole project company. We can recall several sad cases of our colleagues: one of the largest integrators had been working on the project of a jewelry house [...]

Read more...

Fix RPC error 1702 when calling a WinAPI method from a batch job

You may get the error “RPC error: RPC exception 1702 occurred in session xxx” in the Windows Event Log when some batch job is running. The error details are “The binding handle is invalid”. You can find the list of RPC errors here. This error is thrown because methods those are supposed to be executed on client actually were called on server in the batch mode. Here is an example: {{ client static boolean folderExists(Filename _filename) { boolean ret; ret = System.IO.Directory::Exists(_filename); return ret; } }} To [...]

Read more...

Access denied to method processReport in…

Sometimes you can face this error even if you set up security policy properly: The class that raised this error extends SRSReportDataProviderBase. public class AnkPriceListDP extends SRSReportDataProviderBase [SysEntryPointAttribute] public void processReport() The method is an entry point for the SysOperationProcess class. The access to run this method is also checked in the SysOperationProcess class. I couldn’t set up the access exactly for this method. So I fixed the problem by granting access to execute this method in the privilege’s Permission.ServerMethods node.

Read more...

Pivot table in Excel from AX 2012

Using ComExcelDocument_RU #define.xlDatabase(1) #define.xlPivotTableVersion15(5) #define.PivotTableName("Pivottable1") #define.PivotTable("PivotTable") void buildPivotTable(BookMark _sourceBookMark, container _columnFields, container _rowFields, container _dataFields, int _sourceWorkSheet = 1, BookMark _destBookMark = "", int _destWorkSheet = 1, str _destWorkSheetName = "", BookMark _destBookMarkCell = "") { COM comWorkBook, comWorkSheet; COM comPivotCaches, comPviotCache; COM comPivotTable, comPivotField; COM comCommandBars, comCommandBar; int iPivotField; BookMark destBookMark; ; comWorkBook = m_comApplication.activeWorkBook(); comWorkSheet = this.getWorkSheet(_sourceWorkSheet); comPivotCaches = comWorkBook.PivotCaches(); //xlDatabase means data is in the active workbook comPviotCache = comPivotCaches.Create(#xlDatabase, strFmt("%1!%2", comWorkSheet.name(), _sourceBookMark), #xlPivotTableVersion15); //Empty String as destination means a new WorkSheet will be created if (_destBookMark) { comWorkSheet = this.getWorkSheet(_destWorkSheet); destBookMark = strFmt("%1!%2", comWorkSheet.name(), _destBookMark); } comPivotTable = comPviotCache.CreatePivotTable(strFmt("%1!%2", _destWorkSheetName, _destBookMarkCell), #PivotTableName, #xlPivotTableVersion15); for (iPivotField = [...]

Read more...