• Home
  • About TechTalk
  •  

    API: Two new functions, two huge optimizations…

    6 August 2010

    As part of our ongoing commitment to make the best possible ERP integration platform available, we’ve added two new often-requested functions to the API this week:

    OrderLine.GetAll() will allow you to retrieve all order lines across all orders.

    Debtor.FindByPartialName() enables wildcard searches for customers by name.

    Finally, bulk downloading of invoices and products have been sped up tremendously. Internal testing has shown speedups of factor 50 for invoices, and 7-8 for products.

    If you’re using .NET, to use any of the new features, you’ll have to use the latest version of our .NET assembly – which is available here. The optimizations for bulk downloading of invoices and products are purely server-side, and thus, you’ll benefit from them automagically.


    Storage upgrade, phase 2 – complete

    31 July 2010

    The second – and currently last – phase of our move to faster storage has now been successfully completed, and e-conomic is back online again.

    Preliminary benchmarks show quite some performance improvements – although we expect this to be most noticeable as ‘much smaller peaks at high load’.

    In addition to our storage upgrade, we’ve also been working on some ’softer’ optimizations, particularly for the e-conomic API. More on this shortly…


    Move to faster storage – phase 1 complete

    24 July 2010

    We’re happy to announce that phase 1 of our previously mentioned storage upgrade has now been completed – and rather successfully at that, with e-conomic being fully available more than 4 hours earlier than initially publicized. As such, the move itself actually reaped the first benefit of our faster storage :-)

    Regardless, we once again regret any inconveniences caused by e-conomic being offline.


    Planned maintenance

    21 July 2010

    In order to support our continued growth, as well as improve performance, we’ll be moving to faster storage media during the next two weekends.

    Therefore, both the e-conomic application and API will be offline during the following two periods:

    Friday, July 23rd 10pm CET through Saturday, July 24th 6am CET

    Friday, July 30th 10pm CET through Saturday, July 31st 6am CET

    We will of course keep you updated throughout this, as well as when we’re online again.

    We regret any inconvenience caused by this – but we also look forward to welcoming you back to a faster e-conomic.


    API updates

    13 June 2010

    Once again, a new feature, as well as some bug fixes, have found their way to the e-conomic API.

    In the new features department, cash book entries – as represented by the ICashBookEntry class – now have an Employee property. This effectively allows you to add per-employee costs to projects – just like you can already add time entries.

    Additionally, two annoying bugs have been fixed:

    When adding lines to a subscription, an exception is no longer thrown if no Department is specified (thanks to Claus Aaberg for reporting this in our API forum).

    The recently-introduced new entry type ManualDebtorInvoice – allowing you to create customer invoice entries without creating actual invoices – can now be created with the DueDate property set.

    As a final note – please remember that we’re always more than interested in your comments, questions and suggestions in our API forum.


    How to speed up your daily workflows

    29 April 2010

    Hello.My name is Christian and I have an addiction; an addiction to constantly look for ways to do things easier in front of a computer. In more technical terms and from a usability point of view: how to minimize the number of steps on frequently performed work flows or to put it in laymen terms:

    How to work without ever reaching for the mouse.

    Read the rest of this entry »


    e-conomic is available again

    2 April 2010

    The planned system upgrade 1-2 April has been completed earlier than announced and e-conomic is now available again (from 4:15 pm 2 April).

    Some of the tasks planned for this maintenance took longer than we expected. The remaining tasks will be carried out at a later date and time to be announced. We will do our very best to interrupt you as little as possible.

    Sorry again for any inconvenience this scheduled maintenance might have caused you.

    Now continue your Easter lunch :-)


    Releasing new languages and currencies – on popular demand

    1 April 2010

    Due to numerous request for new languages from our users, we are releasing several new languages and currencies that will be available to our users after the Easter holidays. The languages that will be released are Quenya, Na’Vi, Klingon, and Lingua Franca, and both Republic (REC) and Federation Credits (FEC) will also be availabe as currencies. 

    Read the rest of this entry »


    Performance update

    4 March 2010

    Tuesday morning once again saw the e-conomic application crawling to a near-halt for a couple of hours. This was quickly identified as being due to a subtle issue with a recently-introduced feature, which was subsequently optimized, thus eliminating the immediate issue.

    However, prior to this, we have had several similar slowdowns over the past couple of months. We have identified the more general culprit to be an underlying storage system for our database back-end. In very simple terms, the disk speeds cannot keep up with certain functionalities. However, remedying this isn’t simply a matter of ‘adding faster disks’ – there’s quite a lot of careful planning involved as well. Right now, several people at both e-conomic and our hosting partner are working on this.

    At the same time, we are of course doing everything we can to reduce the effects of this problem in the immediate term. This involves a lot of old-fashioned code optimizing – which has already been applied to several functions. Additionally, some specific functionalities have been identified to use a disproportionate amount of resources compared to the share of customers using it. For these functionalities, we may impose restrictions requiring these customers to e.g. filter reports more narrowly. In more extreme cases, we may choose to completely disable access to certain ‘heavy’ functionality for a short while, as we work on optimizing it.

    We will of course keep you updated on both immediate, short and longer-term improvements and solutions to this.


    Know your API usage

    15 February 2010

    In our ongoing efforts to ensure all our customers the best possible experience with the e-conomic application – as well as our numerous integration solutions – we have frequently observed that some customers are sending excessive numbers of requests to the e-conomic API.

    In addition to having a negative impact on the performance of these particular integrations, this may also affect the perceived performance of the e-conomic system for other users.

    Therefore, effective as of tomorrow, Tuesday, 16 February, e-conomic will automatically send out an e-mail every morning to all customers whose integration solution(s) have sent more than 50,000 API requests the preceding day. This e-mail will be sent to the superuser of the company – urging him to forward it to his developers or to those of his integration partner.

    The notification e-mail will include a breakdown of the integration’s usage of API functions. This breakdown will be useful to the developers who will have to optimise the integrations in question. As always, our technical API support at api@e-conomic.com will be available for developers who need additional information or specific tips on how to optimize their integrations.

    Please note that if your integration consistently sends more than 50,000 API requests per day, you will receive this notification e-mail every day! This is not a bug – it’s a feature :-) . We have yet to see an integration that cannot have its daily number of requests reduced to far below 50,000, using nothing but simple optimizations – mainly including efficient usage of the bulk functionality exposed in the API.

    Some of the typical optimizations available are:

    Using data classes

    Optimizing synchronizations