Thursday, 19 January 2017

Volume Based Prices In Contracts

Hi All,

Quite recently I have discovered that Acumatica Contracts Module support different types of prices agreements:

  • Fixed price - In this case you setup specific price (that can be standard or specially agreed) inside Contract Item
  • Volume Based Prices - In this case final price of one item will depend on customer usage, like a standard volume based prices in Acumatica.

Fixed Price

Fixed price is configured thought Contract Item
Fixed price acumatica
Than you can setup contract with this contract item and start to use it
Fixed price acumatica
When you bill contract and check invoice you can see that Acumatica use exact price from Contract Item.
Fixed price acumatica

You also can set-up extra usage price that can be bigger or lower, but only one level. But the problem is that you have only one level of different prices. That means that you cannot setup 3 or more different prices depend on usage.
Fixed price acumatica

Volume Based Prices
In case you want more flexible process you can try different setup approach. First of all we configure standard volume base prices (Remember that it is a separate feature that you should activate).
Volume Based Prices acumatica
But then you should not include that idem in the contract itself.
Volume Based Prices acumatica
You still can tract contract usage, however it will not be shown in the contract.
Volume Based Prices acumatica
When you bill contract and issue invoices, system will get all used items and apply all standard prices and discount rules, so you will see that contracts have used your volume based prices.
Volume Based Prices acumatica

Have a nice Configuration!

Tuesday, 10 January 2017

Manual Mass Notifications

Hi All,

Lets imagine scenario where you want to send multiple notifications about multiple documents from the system. It might be quite complicated if you decide to do it manually.
multiple notifications acumatica
Today I want to show you one trick how you can trigger standard notification on multiple documents at once. For this task we will use Automation Notifications, Custom Field and Generic Inquiry.

My scenario would be to update my customers about quotes that are expiring soon. I want to review them before sending notifications, but do not want to do it one by one.

General idea is - to have a special not visible but editable field that will trigger notification. If we have field, that we can easily update it using Generic Inquiry Mass update operation.

Welcome in the article if you want to see configuration and testing steps.

Friday, 6 January 2017

Useful Web.Config Parameters

Hi All,

Acumatica as standard ASP.NET application stores some configurations in web.config file. Some parameters can be really useful for users and developers.
web.config file acumatica
In this article i want to share with you parameters that really can help you.

Tuesday, 3 January 2017

Append and Replace of DACs Attributes

Hi Everyone.

Today want so share with you some ideas on how you can append, replace or merge attributes on standard Acumatica's data access classes.
attributes acumatica
Acumatica Framework attributes are used to add common business logic to the application components. Attributes implement business logic by subscribing to events. Each attribute class directly or indirectly derives from the PXEventSubscriberAttribute class. B

Most attributes are added to data access class (DAC) field declarations. There are also attributes that are placed on a DAC declaration, view declarations in a business logic controller (BLC), and the BLC declaration itself. In general there are 4 places where you can define attributes:
  • DAC attributes
    • DAC fields. You can define attributes on property that represents database column.
      DAC attributes acumatica
    • DAC Extension (PXCacheExtension). That extensions are very similar to data access classes itself. You also can define attributes on properties that represents fieds
  • Graph Attributes
    • Graph CacheAttached method. That method has special naming convention to identify DAC and field. That method never be executed by the platform so you should not put any logic there. All attributes are just defined on method itself. Great benefit of defining attributes on CacheAttached method is that you can have different attributes (and logic) in different screens.
    • Graph Extension (PXGraphExtension). Similar to previous one but defined inside graph extension class.