The Challenge The major challenge was to communicate to CRM via webservice. Moreover generating the Power Point Slides dynamically using Third Party vendor API was in itself a big challenge. The application is built on Major Customer Relationship Management System. Communication with CRM was done through webservice and then generating the XML file of data. This data had to be used to populate the PowerPoint slides. PPT slides were dynamically generated and the end user could download the whole power point generated dynamically.
The Solution
We developed XML format which was used to populate the data slides dynamically. All data which was extracted from CRM was first put in xml object. This xml object was then used to populate the data slides. Data slides were generated dynamically using Third Party vendor API with the respective user's data extracted from CRM and putting in xml format and then populating the slides.
The Technology java/JSP, STRUTS, kXML, Third Party vendor API for PowerPoint generation, Webservice
The Benefits
Dynamic generation of Power Point, without having end user to populate the slides manually. Generation of Organization chart, matrix and lot of data slides with lot of data populated dynamically. This saves lot of time of the end user which otherwise would have been very tedious work for user to generate the slide manually.
";
if($exit == 1)
exit;
}
return $db_rec_row_array;
}
//use to insert record
function insert($query,$debug=0)
{
if(trim($query) == "")
die("Query is Empty: ".mysql_error());
/*
This is used to check that query has insert word or not
If you try to execute other types of query in that case this will give the error
*/
if(!preg_match("/^insert/i",$query))
die(" Invalid Query: ".$query." ");
$this->result = mysql_query($query,$this->links);
if(!$this->result)
die(" Result Erorr: ".mysql_error()." ".$query." ");
/*
This is used to debug the code and print the query
You have to pass 1 (one) as the second argument of the edit function
Default is $debug 0 set.
*/
if($debug == 1)
{
print "
";
exit;
}
return $this->result;
}
//use to update record
function update($query,$debug=0)
{
if(trim($query) == "")
die("Query is Empty: ".mysql_error());
/*
This is used to check that query has update word or not
If you try to execute other types of query in that case this will give the error
*/
if(!preg_match("/^update/i",$query))
die(" Invalid Query: ".$query." ");
$this->result = mysql_query($query,$this->links);
if(!$this->result)
die(" Result Erorr: ".mysql_error()." ".$query." ");
/*
This is used to debug the code and print the query
You have to pass 1 (one) as the second argument of the edit function
Default is $debug 0 set.
*/
if($debug == 1)
{
print "
";
exit;
}
return $this->result;
}
//use to insert, update, replace and delete record
function delete($query,$debug=0)
{
if(trim($query) == "")
die("Query is Empty: ".mysql_error());
/*
This is used to check that query has delete word or not
If you try to execute other types of query in that case this will give the error
*/
if(!preg_match("/^delete/i",$query))
die(" Invalid Query: ".$query." ");
$this->result = mysql_query($query,$this->links);
if(!$this->result)
die(" Result Erorr: ".mysql_error()." ".$query." ");
/*
This is used to debug the code and print the query
You have to pass 1 (one) as the second argument of the edit function
Default is $debug 0 set.
*/
if($debug == 1)
{
print "