AutoCount Accounting 2.1 API: Difference between revisions

no edit summary
No edit summary
No edit summary
 
(47 intermediate revisions by the same user not shown)
Line 1:
 
==Introduction to AutoCount Accounting 2.1.05-2.1.8==
First release of AutoCount Accounting 2.1.05.1x is the continuous update to previous version of 2.0.<br/>
 
This release thereThere are some new namespace and rearrangement of the namespace to better separation of UI and logic which it has been done for the GL, AR and AP. For instance, when programming for the GL, AR and AP without UI, programmer only need to download autocount.dll and autocount.accounting.dll without having to download the entire assemblies.<br/>
 
AutoCount Accounting 2.1 assemblies can be downloaded from the '''nuget'''. So that, programmer can download and manage the assemblies of different versions.<br/>
Line 9:
Furthermore, AutoCount Accounting 2.1 script template is published at '''Extensions for Visual Studio''', where programmer can find the extensions in Visual Studio 2019 and 2022.
 
===CommonMajor Componentschanged versionsin 2.1.8===
AutoCount Accounting 2.1.8 is the extended version of 2.1.5, the significant changed of 2.1.8 is {{DevExpress}}.<br>
{{DevExpress}} is upgraded from 19.2.10 to '''22.2.7'''.
<br><br>
{{Note|Plug-in that is built for '''2.1.8''' requires to include '''SetDevExpressComponentVersionRequired("22.2.7")''' at the constructor of the plug-in initiate.}}
===Compatibility===
[[:Category:AutoCount Accounting 2.1:Release Note|AutoCount View Accounting 2.1 Release Note]]
<tabber>
2.1.8=
====Common Components versions====
#Net Framework '''4.8'''
#:Please use only .Net Framework 4.8.
#{{DevExpress}} WinForms '''19.2.10'''
#{{DevExpress}} WinForms '''22.2.7'''
#Newtonsoft Json.NET '''13.0.1'''
 
====Setup AutoCount Accounting 2.1 Requirements====
#Net Framework '''4.8'''
#[https://www.microsoft.com/en-us/download/details.aspx?id=50003 SQL Server 2012 SP3] or higher
#AutoCount Server 2.1.0.17 or higher
#AutoCount Accounting 2.1.08.123 Setup or higher
|-|
2.1.5=
====Common Components versions====
#Net Framework '''4.8'''
#:Please use only .Net Framework 4.8.
#{{DevExpress}} WinForms '''19.2.10'''
#Newtonsoft Json.NET '''13.0.1'''
====Setup AutoCount Accounting 2.1 Requirements====
#Net Framework '''4.8'''
#[https://www.microsoft.com/en-us/download/details.aspx?id=50003 SQL Server 2012 SP3] or higher
#AutoCount Server 2.1.0.6 or higher
#AutoCount Accounting 2.1.5.16 Setup or higher
</tabber>
<br/><br/>
 
==Assemblies Filename Changed ''(Updated: 6/1/2023)''==
<br/>
==Assemblies Filename Changed==
{|class="wikitable"
|-
!Filename in AutoCount Accounting 1.9, 2.0
!Filename in AutoCount Accounting 2.1
!Namespace is changed ?
!Namespace
Line 40 ⟶ 63:
|}
 
The word "Invoicing" is removed from the filename of Sales and Purchase, but the namespace remains the same.<br/>
''Although the project reference of 2.0 sales & purchase assemblies need to be removed, then add the 2.1 sales & purchase assemblies, the coding doesn't require to be changed.''
 
{{note|Make sure all AutoCount Accounting 2.0 assemblies are removed from reference before adding 2.1 assemblies.}}
<br/>
 
==GST Tax Code and '''Tax Rate''' ''(Updated on 20/12/2022)''==
==Namespace Changed ''(Updated: 16/8/2023)''==
*AutoCount Accounting 2.1 API will auto update the tax rate according to the document date.
 
*:However, it requires to initiate the GST Helper by calling the SubProjectStartup.
===2.1.5 to 2.1.8 API Changed===
*:In other words, if SubProjectStartup isn't called, obtain the TaxRate will fail.
{|class="wikitable"
|-
!2.1.5
!2.1.8
|-
|AutoCount.LicenseControl.ModuleControl.GetOrCreate(myUsrSession.DBSetting)<br>.ModuleController.'''SystemCurrency''';
|AutoCount.LicenseControl.ModuleControl.GetOrCreate(myUsrSession.DBSetting)<br>.ModuleController.'''Country''';
|}
 
===2.0 to 2.1 API Changed===
{|class="wikitable"
|-
!colspan=3|AutoCount Accounting 2.0
!colspan=3|AutoCount Accounting 2.1
|-
!Assembly
!Namespace
!class
!Assembly
!Namespace
!class
|-
|AutoCount.Accounting.dll
|AutoCount.Data.Linq
|
|AutoCount.Accounting.dll
|AutoCount.Data.EntityFramework<br>AutoCount.Data.Sql
|
|-
|colspan=6|'''Bonus Point'''
|-
|rowspan=6|AutoCount.GeneralMaint.dll
|rowspan=2|AutoCount.GeneralMaint.MemberMaintenance
|MemberCommand
|rowspan=6|AutoCount.Invoicing.dll
|rowspan=4|AutoCount.BonusPoint.Member
|MemberCommand
|-
|MemberEntity
|MemberEntity
|-
|rowspan=2|AutoCount.GeneralMaint.MemberTypeMaintenance
|MemberTypeCommand
|MemberTypeCommand
|-
|MemberTypeEntity
|MemberTypeEntity
|-
|rowspan=2|AutoCount.GeneralMaint.RaceMaintenance
|RaceCommand
|rowspan=2|AutoCount.BonusPoint.Race
|RaceCommand
|-
|RaceEntity
|RaceEntity
|}
 
==GST Tax Code and '''Tax Rate''' ''(updated: 20/12/2022)''==
*AutoCount Accounting 2.1 API auto updates the tax rate in Sales and Purchase documents according to the document date.
*:When initiate the object of GSTHelper in a standalone or service, the application must have had called the SubProjectStartup at the beginning of the application.
*:If SubProjectStartup isn't called, obtain the TaxRate will fail.
*:Plug-in development does not require to call the SubProjectStartup, because it has been called by the host application.
*Secondly, make sure the manually added TaxCode is linked or assigned with Government Tax Code.
*:Prior to version 2.1, "GovernmentTaxCode" was known as "IRASTaxCode".
 
<br/>
 
==3 MainEntry to start a subProject==
Calling the SubProjectStartup is to load the plug-in and also to activate the license.
In 2.1, there are 3 classes thatthe allowprogrammer user tocan call the subprojectstartupSubProjectStartup with different assembly and usage.
You may find the document at [[Initiate UserSession and DBSetting]].
 
===MainEntry in AutoCount.Accounting.dll===
'''MainEntry.Startup'''<br/>
This MainEntry is suitablecommonly used for integration use, or when no user interactionlogin is required to access and initiate AutoCount Accounting, and it does not load UI components.
<syntaxhighlight lang="csharp">
AutoCount.MainEntry.Startup startup = new AutoCount.MainEntry.Startup();
Line 69 ⟶ 157:
</syntaxhighlight>
 
===MainEntry in AutoCount.Accounting.UIMainEntry.dll===
'''MainEntry.MainStartup'''<br/>
This startupMainEntry callsopens the AutoCount Accounting user login form, andwith successful login, it returns the object of UserSession.<br/>
If user clicked [Cancel], the object of UserSession is null.
<syntaxhighlight lang="csharp">
Line 85 ⟶ 173:
</syntaxhighlight>
 
===MainEntry in AutoCount.MainEntryAccounting.UI.dll===
'''MainEntry.UIStartup'''<br/>
This MainEntry .UIStartup is similar to the MainEntry.Startup, except that it loads UI components.
<syntaxhighlight lang="csharp">
AutoCount.MainEntry.UIStartup startup = new AutoCount.MainEntry.UIStartup();
Line 98 ⟶ 186:
}
</syntaxhighlight>
{{Note|[https://wiki.autocountsoft.com/wiki/Programmer_Download_and_Links[Programmer Download and Links#Programmer_ToolsProgrammer Tools (Plug-in Builder and others)|Get latest plug-in builder 2.1.0.1 for AutoCount Accounting 2.1]]}}
 
==NuGet==
To download the assemblies to your project, start a new project or open a project, then go to Tools | NuGet Package Manager | Manage NuGet Packages for Solution...
{{Note|If unsure of which NuGet package to install, select '''AutoCount2.MainEntry''' package is sufficient for most project.}}
 
[[File:VSmenuNuget.png|link=]]
 
Line 116 ⟶ 204:
[[File:NugetAC21DependencyCharts.png|link=]]
 
For example, when selected NuGet package is '''AutoCount2.Sales''' is installed, below packages willare beinstalled downloadedsimultaneously:-<br>
#'''AutoCount2.Sales'''
#*AutoCount2.ARAPStock
#**AutoCount2.Accounting.UIInvoicing
#***AutoCount2.UIInquiry
#*AutoCount2.AccountingARAP
#**AutoCount2.Accounting.UI
***AutoCount2.UI
****AutoCount2.Accounting
*****AutoCount2
 
Another example, when NuGet package '''AutoCount2.MainEntry''' is installed, below packages are installed simultaneously:-<br>
==Visual Studio Extensions==
'''AutoCount2.MainEntry'''
*AutoCount2.FinancialReport
**AutoCount2.Accounting.UI
***AutoCount2.UI
****AutoCount2.Accounting
*****AutoCount2
*AutoCount2.Tools
**AutoCount2.GL
**AutoCount2.GeneralMaint
**AutoCount2.GST
***AutoCount2.Inquiry
**AutoCount2.Purchase
***AutoCount2.Sales
****AutoCount2.Stock
*****AutoCount2.Invoicing
****AutoCount2.ARAP
 
==AutoCount Script 2.1 Template in Visual Studio Extensions==
AutoCount Script Template 2.1 can be downloaded from Visual Studio Market Place.
To download the script template, start '''Visual Studio 2019 or 2022'''
# On the main menu, click Extensions | Manage Extensions
# In the Manage Extensions, search for "AutoCount"
# Select the template according to the intended version.
# Close all Visual Studio and it starts the setup
# Once done, start Visual Studio and create new project
#:"AutoCountScript 2.1.8" project is added to the project list.
You may also visit Microsoft for how to use Visual Studio Extensions.
[https://learn.microsoft.com/en-us/visualstudio/ide/finding-and-using-visual-studio-extensions?view=vs-2022 Find, install, and manage extensions for Visual Studio]
 
*Supported Visual Studio version: 2019, 2022
{{NavigateDeveloper}}
*Language in the project: C#
 
 
{{NavigateDeveloper}}
[[Category:Programmer]]
[[Category:API]]