ProductReview Example: Difference between revisions

From DataFlex Wiki
Jump to navigationJump to search
Jka (talk | contribs)
Jka (talk | contribs)
mNo edit summary
Line 1: Line 1:
{{underconst}}
{{underconst}}


== Functionality ==
= Functionality =


This example demonstrates how to create a [[AJAX]] solution using [[Visual DataFlex]]
This is yet another example of how to create a [[AJAX]] solution using [[Visual DataFlex]].


The overall goal is to be able to see what users think about a particular item . As an added benefit - users can also share information about where to buy the particular items.
Before you continue you should take a look at the existing examples in the VDF AJAX library.
 
 
In this example the overall goal is to be able to see what users think about a particular item . As an added benefit - users can also share information about where to buy the particular items.




Line 19: Line 22:




The system will implemented  as a web application, [[Using the AJAX Library]] and having a datamodel [[Using DataDictionaries]] .


== [[DataDictionaries]] ==
= VDF Ajax code =
== [[DataDictionary|Data Dictionaries]] ==


We want to store information about users, places, purchases and known items. The other tables should hold sufficient information about the items purchased and how the users liked them.
We want to store information about users, places, purchases and known items. The other tables should hold sufficient information about the items purchased and how the users liked them.
Line 35: Line 38:
*UserInfo_DataDictionary
*UserInfo_DataDictionary


== Application design  [[Using the AJAX Library]] ==


==== [[AJAX WebService Object]] ====
== [[Web Service objects]] ==
Create a [[AJAX WebService Object]] to call from the clientside VDF Ajax lib. This webservice will be responsible for handling the serverside calls.
Create a [[AJAX WebService Object]] to call from the clientside VDF Ajax lib. This webservice will be responsible for handling the serverside calls.


this is the point of entry on the serverside (where information will be extracted from)
==== [[AJAX Session management]] ====


The Web Service object should provide the following functionality for session management.
*UserLogin: checking if the supplied password is correct. Use UserInfo_DD
*UserLogin: checking if the supplied password is correct. Use UserInfo_DD
*HasRights: does the logged in user have the rights to perform the chosen function. Use UserInfo_DD
*HasRights: does the logged in user have the rights to perform the chosen function. Use UserInfo_DD


==== [[Using AJAX Web Browser Objects]] ====
 
== [[Web Browser Objects]] ==
 
*item.wo : handling information about items.  
*item.wo : handling information about items.  
*userinfo.wo : handling information about users
*userinfo.wo : handling information about users
Line 56: Line 58:
The Web Object should use the corresponding data dictionaries
The Web Object should use the corresponding data dictionaries


==== Creating the frontend logic ====
 
 
== Web markup ==
The web markup should be designed around forms, that evolve around the web objects.
The web markup should be designed around forms, that evolve around the web objects.
Version 1.1 of the AJAX Library has wizards to create most of this functionality.
Version 1.1 of the AJAX Library has wizards to create most of this functionality.
*Rating.asp: a list of items with detailed ratings. show details about related users and items.
*Rating.asp: a list of items with detailed ratings. show details about related users and items.
**Should use a [[AJAX Lookup list]] to choose the item to supply a rating for
**Should use a [[AJAX Lookup list]] to choose the item to supply a rating for
Line 67: Line 69:
*Purchases.asp: information about what items users has bought at what place ( [[AJAX Form]] )
*Purchases.asp: information about what items users has bought at what place ( [[AJAX Form]] )


== Implementation ==




[[Category: Web Programming]]
[[Category: Web Programming]]

Revision as of 09:41, 20 September 2008

ProductReview Example page under construction

Functionality

This is yet another example of how to create a AJAX solution using Visual DataFlex.

Before you continue you should take a look at the existing examples in the VDF AJAX library.


In this example the overall goal is to be able to see what users think about a particular item . As an added benefit - users can also share information about where to buy the particular items.


To accomplish this, then users should be able to:

  • login
  • choose an item from a list (use a AJAX Lookup List )
  • enter information about a known item ( AJAX Form )
    • supply information about the place where an item was bought.
  • supply a rating of an item
  • Overview supplied ratings from other users
  • Find out where to buy the requested item


VDF Ajax code

Data Dictionaries

We want to store information about users, places, purchases and known items. The other tables should hold sufficient information about the items purchased and how the users liked them.

Create these tables in the database builder and create the associated data dictionaries .

The following data dictionaries should now be available:

  • Item_DataDictionary
  • Place_DataDictionary
  • Purchase_DataDictionary
  • Rating_DataDictionary
  • UserInfo_DataDictionary


Web Service objects

Create a AJAX WebService Object to call from the clientside VDF Ajax lib. This webservice will be responsible for handling the serverside calls.


The Web Service object should provide the following functionality for session management.

  • UserLogin: checking if the supplied password is correct. Use UserInfo_DD
  • HasRights: does the logged in user have the rights to perform the chosen function. Use UserInfo_DD


Web Browser Objects

  • item.wo : handling information about items.
  • userinfo.wo : handling information about users
  • place.wo: handling info about places
  • purchase.wo: handle information about places
  • rating.wo: handle information about ratings

The Web Object should use the corresponding data dictionaries


Web markup

The web markup should be designed around forms, that evolve around the web objects. Version 1.1 of the AJAX Library has wizards to create most of this functionality.

  • Rating.asp: a list of items with detailed ratings. show details about related users and items.
  • RateItem.asp: a form to supply rating information about a particular item ( AJAX Form )
  • Place.asp: information about a place where items can be bought ( AJAX Form )
  • Purchases.asp: information about what items users has bought at what place ( AJAX Form )