Monday, 23 April 2012

Comparision b/w X++ and C#

Hi frnds...


we all know that both X++ and C# are OPP languages, but still there is some Differences in both.... the main differences is ..............



X++
C#
abstract
class
The modifiers public and private are ignored on class declarations.
There is no concept of a namespace grouping of classes. There are no dots (.) in any class names.
The modifiers public and private can be used to modify class declarations. C# also has the keyword internal, which relates to how classes are grouped together in assembly files.
extends
A class declaration can inherit from another class by using the extends keyword.
A colon (:) is used where the key words extends and implements are used in X++.
final
A final method cannot be overridden in a derived class. A final class cannot be extended.
The keyword sealed on a class means the same thing that final means on an X++ class.
implements
A class declaration can implement an interface by using the implements keyword.
(See extends.)
interface
An interface can specify methods that the class must implement.
An interface can specify methods that the class must implement.
new
The new keyword is used to allocate a new instance of a class. Then the constructor is automatically called.
Each class has exactly one constructor, and the constructor is named new. You can decide what parameters the constructor should input.
The new keyword is used to create a new instance of a class. Then the constructor is automatically called.
Constructor methods themselves are not named new; they have the same name as the class.
null
private and protected
The private and protected keywords can be used to modify the declaration of a class member.
The private and protected keywords can be used to modify the declaration of a class member.
public
A method that is not modified with public, protected, or privatehas the default access level of public.
A method that is not modified with public, protected, or private has the default access level of private.
static
A method can be static, but a field cannot.
Both methods and fields can be static.
super
The super keyword is used in a derived class to access the same method on its base class.
void method2()
{
;
// Call method2 method
// on the base class.
super();
}
The base keyword is used in a derived class to access various methods in its base class.
void method2()
{
// Call methods on
// the base class.
base.method2();
base.method3();
}
this
For a call from one instance method to another on the same object, a qualifier for the called method is required. The keyword this is available as a qualifier for the current object.
For a call from one instance method to another on the same object, a qualifier for the called method is not required. However, the this keyword is available as a qualifier for the current object. In practice, the keyword this can be helpful by displaying IntelliSense information.
finalize
The Object class contains the finalize method. The finalize method is not final, and it can be overridden.
The finalize method appears to resemble the System.Object.Finalize method in C#, but in X++ the finalize method has no special meaning of any kind.
An object is automatically removed from memory when the last reference to the object stops referencing the object. For example, this can happen when the last reference goes out of scope or is assigned another object to reference.
The methods Finalize and Dispose are common on some types of classes.
The garbage collector calls the Finalize and Dispose methods when it destroys and object.
main
Classes that are invoked from a menu have their main method called by the system.
Classes that are invoked from a command line console have their Main method called by the system.

Saturday, 14 April 2012

Basic Grid in Enterprise Portal


This article describes how to create and test a basic grid that displays customer records. Create a DataSet

1. Open Microsoft Dynamics AX.
2. Open the AOT.
3. Right-click on the Data Sets node and choose New Data Set.
4. Right-click on the newly added data set and choose Properties.
5. In the property sheet rename the new Data Set to SampleCustomers.
6. Expand SampleCustomers.
7. Right-click the Data Sources node and choose New Data Source.
8. Right-click the new Data Source and choose Properties.
9. In the property sheet set the Table property to CustTable.
10. In the property sheet set the Name property to CustTable.
11. In the property sheet set the InsertIfEmpty property to No.



  • Create a Web Project



1. Open Microsoft Visual Studio 2008.
2. Under the File menu choose New and then Web Site.
3. Choose Visual C# as the Language – note that only C# is supported.
4. Choose Dynamics AX Web Project as the template.
5. Enter SampleCustomersGrid as the project name.
6. Click OK when finished.


  • Create a User Control and Add it to the AOT


1. In Visual Studio add a new File under File then New File.
2. Choose Visual C# as the language.
3. Choose Dynamics AX User Control under the My Templates Section.
4. Enter SampleCustomersGrid.ascx as the name.
5. Click Add when finished.
6. In the Solution Explorer, right-click on the new user control, SampleCustomersGrid.ascx, and select Add to AOT.



  • Add a Grid to Your User Control


1. In Visual Studio in the Solution Explorer, right-click the user control and select View Designer.
2. Locate the Microsoft Visual Studio 2008 Toolbox under View then Toolbox.
3. Find and expand the Dynamics AX section.
4. Drag-and-drop an AxDataSource onto the design.
5. Click on the arrow in the upper right-hand corner of the AxDataSource and set the DataSet Name property to SampleCustomers. This can also be done through the properties pane.
6. Right-click on the AxDataSource and choose Properties.
7. Rename the new AxDataSource to Customers_DS by changing the (ID) property to Customers_DS.
8. Find the AXGridView control in the toolbox under View and then Toolbox.
9. Drag-and-drop the AXGridView onto the design.
10. Right-click on the AxGridView and choose Properties.
11. Rename the control’s ID to CustomersGrid by changing the (ID) property.
12. On the CustomersGrid click on the arrow in the upper right-hand corner of the control and set the Choose Data Source property to Customers_DS. This associates the grid’s data source to Customers_DS.
13. On the CustomersGrid click on the arrow in the upper right-hand corner of the control and click on the Edit Columns… link. This opens the Dynamics AX Bound Field Designer. Here, you can choose which fields will appear in the grid.
14. Double-click on the following fields to add them to the grid: AccountNum, Name, CustGroup.
Also choose to add the ContactInfo BoundFieldGroup which is in this same window as the AccountNum, Name and CustGroup fields in the Available Fields window. The ContactInfo BoundFieldGroup will contain all the fields defined in ContactInfo Field Group under the CustTable table in the AOT.
15. Since we would like the name of the customer to appear in the first column, select Name under the Selected Field list and use the up arrow to move it up in the order.
16. Press OK to save.
17. Click the Save icon on the Visual Studio toolbar to save your project.



  • Testing Your User Control To Test Through Microsoft SharePoint Services


1. Navigate to your Microsoft Dynamics AX Enterprise Portal web site.
2. Click on Site Actions and select Create.
3. Click on the Web Part Page link.
4. Choose a Name, Template, and the Document Library Enterprise Portal.
5. Click the Create button.
6. If the page is not in Edit Mode, click Site Actions and select Edit.
7. In one of the web page’s sections click the Add a Web Part bar.
8. Check Dynamics User Control Web Part and select Add.
9. On the new web part, click edit and select Modify Shared Web Part.
10. Set the Managed content item property to your user control, SampleCustomersGrid.
11. Click OK.
12. Under the Site Actions menu click the link Exit Edit Mode.
13. Minimize the web browser.
14. Locate and open the web.config file for the SharePoint site. (ex: C:\Inetpub\wwwroot\wss\VirtualDirectories\80)
15. Locate the compilation section and set the debug property to true




16. Open your Microsoft Visual Studio 2008 SampleCustomersGrid project.
17. From the menu choose Debug and select Attach to Process.
18. Select the w3wp.exe process for the SharePoint site and click Attach.
19. In Visual Studio’s Solution Explorer right-click your control and choose View Code.
20. Add breakpoints to the code where needed.
21. Maximize the open web browser and refresh the SharePoint site.
22. When finished debugging, set the debug attribute in the web.config file back to false.



  • To Test Through Microsoft Visual Studio 2008


1. In Visual Studio in the Solution Explorer, right-click the project node and select Import Style Sheets.
2. In the Solution Explorer, right-click the AxWebPartPage.aspx page and select View Designer.
3. In the design under Body, locate dynamics:AxUserControlWebPart1. It is the second box containing Untitled under the Body.
4. Right-click dynamics:AxUserControlWebPart1 and choose Properties.
5. Set the Dynamics AX Managed Web Content Item property to your user control, SampleCustomersGrid.
6. Save your control.
7. In the Solution Explorer right-click your SampleCustomersGrid control and choose View Code.
8. Add breakpoints to the code where needed.
9. Click the green arrow on the toolbar to build and run the solution