Thursday, May 29, 2014

Universal Method of Restoring a Snapshot with Customization

Hi Everyone,

There were few questions recently from our support and customers on how to restore snapshots we sent to support centre. Well our customers may use customizations, with fields added to tables.

So this post is to shorten your support response turnaround.

Obviously if you make such a snapshot, it will be hard to restore on plain company. So what should be steps that always work. We have Source company and Destination. Source is at your customer premises. Destination is in our support centre in ... one of the European countries. So here are the steps:

0. Even before you started. Make sure 'A-ca' version on source and destination is the same. Literally.
1. Make a snapshot at source company. Full snapshot, with the customization, on the source company. Export it in a file. Keep it safe.
2. Export source company customization in a file. ZIP file of course. Assume you know how to export customizations in a file. Keep that file too. Please note 1 and 2 is not the same, you will get 2 (two) files at the end.
3. Now take files from 1 and 2  and send them to our support. Make sure they received right files (two files).
4. Now, assume we are support engineer. Create Empty company on newly created database. That is easy, just follow installation guide.
5. Take the file from 2. And upload customization on your empty company. Publish it. restart IIS.
6. Upload the snapshot file from 1. Restore it.
7. You enjoy.

Best Regards,

Sergey.

Tuesday, May 27, 2014

SaaS Related Questions. Database Growth Rate.

Hi Guys,

We've got a nice resource, SaaS FAQ, on our web site. Thanks to Marketing and Support team!
It answers most of the questions about how do we provision services, how do we backup, where do we store, etc.

SaaS FAQ on Acumatica Web Site

Another thing, if you experience the service disruption, we have emergency channel to report for it via web portal here:

Service Outage Report

Finally, as our price list includes Service section, please do not hesitate to visit this page for Acumatica Provisioned Services

Services from Acumatica

We also have a document, explaining the DB growth depending on different modules transactions amount.
I would like to copy it here:


Please note, this report does not put into consideration amount of Entities, like for example Fixed Assets.
I am going to stress, number of entities is important only if its significant, say more than tens of thousands.
If we take Fixed Assets module, the size of the tables associated with Assets depends on
A. Asset Useful Life in Month.
B. Number of assets.

So if our assets are in average live for 5 years = 60 month, and we have 10,000 of assets. Then multiplication will tell the actual number of sizable records in the system = 600,000 historical records.
If we purchase 1,000 assets yearly. Add 60,000 historical records every year.

Based on real life example, each asset consumes around 50kB space in the DB. So to speak, 20,000 of assets will grow your database by 1 GB. Its a one time growth, but you need to account for it.

Other modules like Inventory or Accounts Receivable are not so sensitive to number of Entities, unless there is a really big number of them.

All the best,

Sergey.

Saturday, May 24, 2014

Quick Logout. Managing Toolbar Buttons.

Hi Everyone,

For those of you having more than 10-20 companies in your Acumatica ERP instance, when trying to log out for the system, user should scroll down to LogOut Button.

Same to access User profile or Favorites. Please find below the standard positioning of the Log out and Companies. If we have 3 companies - it is not an issue, but when list grows - it becomes very unpleasant for the user every time scroll down to Log Out button to quit. As a result, number of open sessions grows, server slows down.

 We can swap Companies Section and Log Out/Favorites/Profile by modifying Main.aspx.cs file in the root of Acumatica WEB site. Please navigate to the root first:


Now lets open this file and modify the content:

Before Modification

After Modification

After file saved please restart IIS. Then result will be like below:


Now 2 clicks -> User logged Out, no scrolling is needed.

All the best,
Sergey.

Friday, May 16, 2014

Securing the Branch Access

Hi Guys,

Quick post, when it comes to multiple branches sitting inside single database of your Acumatica instance, we may need to assign login and access rights to different users to see different branches.

So this is about tenancy that we have inside Acumatica. We can have multiple companies, or tenants, and this will be a topic for another article, and inside each tenant I can create multiple Branches. These branches, or related companies, will share same COA, same customers/vendors etc. But, important note, we can report everything separately, including VAT tax. So this is important feature for those running multiple company business under one roof.

So how to secure access to each branch for certain people only. Very simple:

1. Create Roles with somewhat resembling branch name or code. These security roles will be only used for branch access control.


2. Add users to that Role, the only users who need access to South branch in my example.


3. And the last step, specify this role at the Branch maintenance screen.


All access will be set automatically by the Acumatica, based on the above settings.

Best,

Sergey.

Tuesday, May 6, 2014

Refreshing Data in Excel from Acumatica Inquiries

Hi Everyone,

In Acumatica we have a powerful feature - inquiry, where if you export it to Excel, it takes the link to the data in Acumatica with it. So later you can just refresh the data right from Excel.

The main problem with that is - when you try to refresh the data, it prompts that Basic Authentication is not allowed for say Office 2010 to get the data from the server.

We can easily overcome it by adding the following 2 records to the registry.

1. Take these records.
2. Save them into a Notepad.
3. Save Notepad file as .reg
4. Run it.

This will add them to your PC registry. Alternatively you can simply add them manually to the registry using RegEdit editor.

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Common\Internet]
"BasicAuthLevel"=dword:00000002

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\WebClient\Parameters]
"BasicAuthLevel"=dword:00000002 

Now let me explain what exactly is the error and what will happen at the end when we fixed it.

Open Inquiry then press Excel button to export its content to Excel:

When file is saved, try to open it, then press Refresh Data button, here is what will happen in 99% of the cases:

It says, Basic Authentication is disabled by Default for access of non SSL servers.
I am not sure for demo purposes how many of us use SSL...
So the only way to solve it, either use SSL server or simply allow Basic Authentication to get used by Office 2010 by default.

Please use the Registry amendment above to allow Basic Authentication.

Then, after restarting your PC here what will happen:

Here we need to provide username and password in a format user@company
For example for Demo company that I have on my PC it will be:


Then after pressing OK it goes to the server, retrieves all the records


And done, success:



Well, if you are too much concerned about security and do not wish to keep Basic Authentication always open, just change the values back to 1 from 2 in the reg file. :)

All the best,

Sergey.

Monday, May 5, 2014

Access to SQL Server by SQL Query Analyzer or Management Studio.

Hi Everyone,

As Acumatica runs on SQL server, we may need, time to time to access our Database by Management Studio. And there could be connectivity issue if we try it, just out of the box...

Most of the times, since we are on the cloud, the SQL server is somewhere outside, not in our office. To access it, we need to follow three simple steps:

1. Open up firewall on SQL server side for the port used by SQL Server for listening.
2. Make sure we specified correct port on the SQL server properties.
3. Make sure on the CLIENT side we choose the same port to access the server.

First.

Open the firewall for SQL port 1433 for Inbound Connections. This need to be done AT THE SERVER SIDE. So please Remote to the server then open this up:



Click at the Inbound Rules, Add new rule, specify that it is for the PORT type of the rule. Then add TCP port 1433 to it.
Well next you choose network profile from where you allow to open it up. Most of the time Domain is enough.

You may need to restart Firewall Service on the server for the rule to take force.



Second. 

Let's open the port for listening at the SQL server side. Here is the hint, if we use NAMED INSTANCE for the SQL server, port on SQL side will be assigned DYNAMICALLY, which is obviously NOT what we want. We have to fix it to be STATIC. Most of the times, historically, we used 1433 port. So let it be 1433 for my example. It is done Here:


Next would be to press right click on TCP/IP protocol, choose properties, then you will see list of IPs.
Scroll down to IPAll or choose the one that your server is configured and:
A. Erase the entry at the Dynamic Port
B. Place 1433 at the TCP Port field
Result:
Click Apply. Then Restart the SQL server.

Third.

Funny thing but this seems to be the most important step. On the client side, when you call SQL Management Studio, please use the following syntax. You NEED to indicate the port at the server IP address :) :


Please take note on that comma port number :)
The thing is, even if you indicated the dynamic off on the SQL, client still thinks its own ways when talking to the SQL server.

All the best,

Sergey.