Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Export orders into csv


dlan

Recommended Posts

I have been using this but in order for it to do what we want I need to

 

a. get rid of all the whitespace and

b. when a client has bought more than 1 item, each product purchased needs to appear in a separate line.

 

Can anyone do this or can someone guide me into how to do this. I have basic PHP knowledge and pick things up very quickly.

 

Many thanks in advance

Edited by dvharrison

Debbie Harrison

 

Link to comment
Share on other sites

I have found http://addons.oscommerce.com/info/4728 which does it with no whitespace, but for orders with more than 1 line I need them on a separate line with a separate transaction number.

 

Can anyone help with this, or even better, PM me with a quote for how much this would cost. :)

Debbie Harrison

 

Link to comment
Share on other sites

I have found http://addons.oscommerce.com/info/4728 which does it with no whitespace, but for orders with more than 1 line I need them on a separate line with a separate transaction number.

 

Can anyone help with this, or even better, PM me with a quote for how much this would cost. :)

 

Great find!!! And it adds headers to each of the columns. The only thing lacking now is product attributes. None of these show - anyone know how to get a column in to show what colour was picked and so on?

Link to comment
Share on other sites

Great find!!! And it adds headers to each of the columns. The only thing lacking now is product attributes. None of these show - anyone know how to get a column in to show what colour was picked and so on?

 

Yes it was, but does anyone have any idea how I can achieve assigning an item idea for every additional line of an order?

Debbie Harrison

 

Link to comment
Share on other sites

  • 2 weeks later...
  • 1 month later...
// --------------------	QUERIES n. 9  MERCE + attributi ------------------------------------//

//prende lista dei prodotti ordinati


$orders_products = tep_db_query("select products_quantity, products_name from orders_products where orders_id = " . $Orders_id);
$orders_products_attributes = tep_db_query("select products_options, products_options_values from orders_products_attributes where orders_id = " . $Orders_id);

//  start loop oggetti

while($row_orders_products = mysql_fetch_array($orders_products)) {
$csv_output .= "n." . filter_text($row_orders_products[0]) . "  ---->  " . filter_text($row_orders_products[1]); 

while($row_orders_products_attributes = mysql_fetch_array($orders_products_attributes)) {
$csv_output .= " --- " . filter_text($row_orders_products_attributes[0]) . "--" . filter_text($row_orders_products_attributes[1]);


// $csv_output .= $orders_products_attributes;
$csv_output .= "\n" . ",,,,,,,,,,,,,,,,,";

}  } // end loop oggetti

Link to comment
Share on other sites

osCommerce export orders to csv file doesn't seem to work?

 

The contribution installed ok - but when I hit the 'Export to CSV' button nothing seemed to work, just a screen refresh

 

This was bugging me for a while - even on a vanilla v2.2 RC2a install...

 

Try this: create a text file called php.ini and in this file have one line of text:

register_globals=on

 

Upload this file to the root of your osCommerce installation - e.g. catalog/php.ini

 

That should do it

 

Place a php.ini into catalog does not change my register_globals setting. I can check this in admin-tool-Server Info.

I am on VPS plan with PHP 5.2.8. I have to go to WHM to set register_globals=on. Now it downloads. But this left a secutity problem?

what about for people used register global off addon. there is no solution. EP .csv download doesn't need register_globals=on.

Link to comment
Share on other sites

  • 3 months later...

Hi - thanks for the contribution. For some reason it is populating the Order_Tax column with weird data? I have a California based store so the California data is correct. For out of state orders though (which are not charged CA Sales tax) the column should be empty but it's not - there's all kinds of numbers in there:

 

13.1625

6.1425

7.8

 

and so on...

 

Any ideas? Also - how to get a discount code column in there?

Link to comment
Share on other sites

  • 5 months later...

hello - don't know if this thread is still active...had installed an older version of the contrib on a site a couple years back and worked great. just installed the more recent version with various fixes to another site, and a weird thing happens : when i hit the export order buttons, i get logged out of the admin. when i go to log back on, the prompt to download the file suddenly appears. so, ultimately the thing works, but i obviously can't deliver the site to the client in this state.

 

any ideas folks ?? don't think it's necessarily a prob with this contrib - the prob could be elsewhere, but i don't know where to start. appreciate any feedback.

 

thanks,

-jennyb

Link to comment
Share on other sites

  • 2 months later...

Hi,

 

I've installed this contribution into two directories: admin\includes\languages\english and the base directory of the cart (where all of the other PHP scripts are located). I'm getting the following error message in the browser window when I attempt to execute the script:

 

 

Fatal error: Cannot redeclare generatecsv() (previously declared in ..../htdocs/pricon/oph/exportorders.php:120) in .../htdocs/pricon/oph/includes/languages/english/exportorders.php on line 488

 

Not having much experience in PHP, I'm not certain why this error is presenting. generatecsv() is only declared once and only called once in the script. Has anyone else experience this problem? Any luck resolving? Could it be that I haven't installed to the correct directory?

 

Any guidance would be greatly appreciated.

 

Thanks,

Scott

Link to comment
Share on other sites

  • 1 month later...

Hi,

 

I've installed this contribution into two directories: admin\includes\languages\english and the base directory of the cart (where all of the other PHP scripts are located). I'm getting the following error message in the browser window when I attempt to execute the script:

 

 

Fatal error: Cannot redeclare generatecsv() (previously declared in ..../htdocs/pricon/oph/exportorders.php:120) in .../htdocs/pricon/oph/includes/languages/english/exportorders.php on line 488

 

Not having much experience in PHP, I'm not certain why this error is presenting. generatecsv() is only declared once and only called once in the script. Has anyone else experience this problem? Any luck resolving? Could it be that I haven't installed to the correct directory?

 

Any guidance would be greatly appreciated.

 

Thanks,

Scott

 

Hi Scott,

 

i am NO php coder, but have just installed this contribution and despite the fact it took ages to do it, i started from the beginning working through each change as directed getting the result we are after.

 

actually totals 8 downloads in all to different folders, and i am wondering if you started off right in the first place. I am assuming you didn't jump to the start of the queue (like me) at just download/upload - make the necessary changes and 'hey presto'. Don't worry i did it and then started again...making sure i had backed up the files i was using or just leaving them open just in case i had to Ctrl + Z etc and then refresh to see what was happening.

 

on all accounts you should be minimally uploading (i take it you have a modified store)these files:

catalog/admin/exportorders.php

catalog/admin/includes/languages/english/exportorders.php

 

and made changes to these files:

catalog/admin/includes/boxes/customers.php

catalog/admin/includes/filenames.php

catalog/admin/includes/languages/french.php

catalog/admin/includes/languages/english.php

 

hope this helps

Link to comment
Share on other sites

  • 1 month later...

Does anyone have an idea on how to have checkout_success.php or a file in that portion of the order process trigger this program to use current order number and dump in a folder on the server? I need this info to process through our main software for inventory purposes.

Link to comment
Share on other sites

Greg

 

You can add some code in the same place as the extra order email is generated.

 

Just depends what you want output and the order of the fields.

 

HTH

 

G

Need help installing add ons/contributions, cleaning a hacked site or a bespoke development, check my profile

 

Virus Threat Scanner

My Contributions

Basic install answers.

Click here for Contributions / Add Ons.

UK your site.

Site Move.

Basic design info.

 

For links mentioned in old answers that are no longer here follow this link Useful Threads.

 

If this post was useful, click the Like This button over there ======>>>>>.

Link to comment
Share on other sites

  • 4 weeks later...

I've added the export order function to osCommerce for integration with Golden Inventory System. I put the small php script in the folder "catalog" for creation a xml stream with last orders. Then, the inventory system connects to the php file and reads the xml stream. The program downloads the sales ordrers in the inventory database. It maybe MS SQL server Express Edition or MS Access database file. After that, I can create invoices, work orders and print different documents and reports in the desktop program.

Edited by burt
remove link
Link to comment
Share on other sites

  • 5 months later...

Is there a way we can separate the first name and last name for the CSV file?

 

I noticed that it uses the $row_orders["customers_name"]

 

I wonder if we can change that to $row_customers["customers_firstname"] . $row_customers["customers_lastname"]

 

We print this off for the USPS and they need all rows seperated.

 

Right now we just get :

 

First_Name | Last_Name | Name_On_Card

 

John Doe | | John Doe

 

 

Thanks for the help!!

Link to comment
Share on other sites

  • 5 months later...

Is there a way we can separate the first name and last name for the CSV file?

 

I noticed that it uses the $row_orders["customers_name"]

 

I wonder if we can change that to $row_customers["customers_firstname"] . $row_customers["customers_lastname"]

 

We print this off for the USPS and they need all rows seperated.

 

Right now we just get :

 

First_Name | Last_Name | Name_On_Card

 

John Doe | | John Doe

 

 

Thanks for the help!!

 

 

There was a stray comma in the list code that was not separating them properly. I took it out and am uploading the fixed copy.

Link to comment
Share on other sites

  • 2 weeks later...

Hai, I want to use this addon with my store v 2.3. But the alteration I have to make in the admin/includes/boxes/customers.php isn't correct. Is there somebody who knows how it has to be?

 

This is what I have to do:

replace with :
// BOF Export Orders to CSV
$contents[] = array('text' => '<a href="' . tep_href_link(FILENAME_CUSTOMERS, '', 'NONSSL') . '" class="menuBoxContentLink">' . BOX_CUSTOMERS_CUSTOMERS . '</a><br>' .
'<a href="' . tep_href_link(FILENAME_ORDERS, '', 'NONSSL') . '" class="menuBoxContentLink">' . BOX_CUSTOMERS_ORDERS . '</a><br>' .
'<a href="' . tep_href_link(FILENAME_EXPORTORDERS, '', 'NONSSL') . '" class="menuBoxContentLink">' . BOX_CUSTOMERS_EXPORTORDERS . '</a>');
// EOF Export Orders to CSV

 

And this is how it look like in the file of v 2.3

<?php
/*
 $Id$
 osCommerce, Open Source E-Commerce Solutions
 http://www.oscommerce.com
 Copyright (c) 2010 osCommerce
 Released under the GNU General Public License
*/
 $cl_box_groups[] = array(
   'heading' => BOX_HEADING_CUSTOMERS,
   'apps' => array(
  array(
    'code' => FILENAME_CUSTOMERS,
    'title' => BOX_CUSTOMERS_CUSTOMERS,
    'link' => tep_href_link(FILENAME_CUSTOMERS)
  ),
  array(
    'code' => FILENAME_ORDERS,
    'title' => BOX_CUSTOMERS_ORDERS,
    'link' => tep_href_link(FILENAME_ORDERS)
  )
   )
 );
?>

Link to comment
Share on other sites

Hm it looks like there is something wrong with the exportorders.php

I've tried to alter the customer.php to:

<?php
/*
 $Id$
 osCommerce, Open Source E-Commerce Solutions
 http://www.oscommerce.com
 Copyright (c) 2010 osCommerce
 Released under the GNU General Public License
*/
 $cl_box_groups[] = array(
   'heading' => BOX_HEADING_CUSTOMERS,
   'apps' => array(
  array(
    'code' => FILENAME_CUSTOMERS,
    'title' => BOX_CUSTOMERS_CUSTOMERS,
    'link' => tep_href_link(FILENAME_CUSTOMERS)
  ),
  array(
    'code' => FILENAME_ORDERS,
    'title' => BOX_CUSTOMERS_ORDERS,
    'link' => tep_href_link(FILENAME_ORDERS)
  ),
 array(
 'code'=> FILENAME_CUSTOMERS_EXPORT,
   'title'=> BOX_CUSTOMERS_EXPORTORDERS,
   'link' => tep_href_link(FILENAME_EXPORTORDERS)
  )
)

 );
?>

 

But if I click the option export in the admin the server returns with: HTTP Error 500 (Internal Server Error): An unexpected condition found when the server would execute the request.

 

Who can help?

Link to comment
Share on other sites

  • 2 weeks later...

Nobody who can help me?

 

You actually almost had it right, you just forgot a 2x spacebar smile.png

 

 

<?php
/*
 $Id$
 osCommerce, Open Source E-Commerce Solutions
 [url="http://www.oscommerce.com"]http://www.oscommerce.com[/url]
 Copyright (c) 2010 osCommerce
 Released under the GNU General Public License
*/
 $cl_box_groups[] = array(
   'heading' => BOX_HEADING_CUSTOMERS,
   'apps' => array(
  array(
    'code' => FILENAME_CUSTOMERS,
    'title' => BOX_CUSTOMERS_CUSTOMERS,
    'link' => tep_href_link(FILENAME_CUSTOMERS)
  ),
  array(
    'code' => FILENAME_ORDERS,
    'title' => BOX_CUSTOMERS_ORDERS,
    'link' => tep_href_link(FILENAME_ORDERS)
  ),
  array(
	 'code' => FILENAME_CUSTOMERS_EXPORT,
	 'title' => BOX_CUSTOMERS_EXPORTORDERS,
	 'link' => tep_href_link(FILENAME_EXPORTORDERS)  
  )
   )
 );
?>

 

 

Tested and working with 2.3 :D Time to do a little "excel programming" :P

Edited by SeekersDK
Link to comment
Share on other sites

Spent a few hours now on making Excel make the invoices automatic (and finally got it working...). I changed some stuff in the exportorders.php. Among other things, i chagned so its seperated by ; now, instead of commas (gave some issues with adresses), and i enabled the part that also exports the product. For the pricing issue, i just divided the price with 10000 in my excel macro, think the issue with the price is due to the price being listed like: 12.00 in my danish Excel. Nothing i will spend any more time on now :) Simple fix ftw!

 

Good luck.

 

<?php
/*
 $Id: exportorders.php,v 1.1 April 21, 2006 Harris Ahmed $
 osCommerce, Open Source E-Commerce Solutions
 http://www.oscommerce.com
 Copyright (c) 2004 Oscommerce
 Use this module on your own risk. I will be updating a new one soon. This template is used to create
 the csv export for Ideal Computer Systems Accounting Software
*/
 define('FILENAME_EXPORTORDERS', 'exportorders.php');

require('includes/application_top.php');
require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_EXPORTORDERS);
// Check if the form is submitted
if (!$_GET['submitted'])
{
?>
<!-- header_eof //-->
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
<title><?php echo TITLE; ?></title>
<link rel="stylesheet" type="text/css" href="includes/stylesheet.css">
</head>
<body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" bgcolor="#FFFFFF">
<!-- header //-->
<?php require(DIR_WS_INCLUDES . 'header.php'); ?>
<!-- header_eof //-->
<!-- body //-->
<table border="0" width="100%" cellspacing="2" cellpadding="2">
 <tr>
   <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="1" cellpadding="1" class="columnLeft">
    <!-- left_navigation //-->
    <?php require(DIR_WS_INCLUDES . 'column_left.php'); ?>
    <!-- left_navigation_eof //-->
  </table></td>
   <!-- body_text //-->
   <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">
    <tr>
	  <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
		  <tr>
		    <td class="pageHeading"><?php echo HEADING_TITLE; ?></td>
		    <td class="pageHeading" align="right"></td>
		  </tr>
	    </table></td>
    </tr>
    <!-- first ends // -->
    <tr>
	  <td><table border="0" style="font-family:tahoma;font-size:11px;" width="100%" cellspacing="2" cellpadding="2">
		  <tr>
		    <td><form method="GET" action="<?php echo $PHP_SELF; ?>">
			    <table border="0" style="font-family:tahoma;font-size:11px;" cellpadding="3">
				  <tr>
				    <td><?php echo INPUT_START; ?></td>
				    <td><!-- input name="start" size="5" value="<?php echo $start; ?>"> -->
					  <?php
					 $orders_list_query = tep_db_query("SELECT orders_id, date_purchased FROM orders ORDER BY orders_id");
	  $orders_list_array = array();
   $orders_list_array[] = array('id' => '', 'text' => '---');
		 while ($orders_list = tep_db_fetch_array($orders_list_query)) {
		    $orders_list_array[] = array('id' => $orders_list['orders_id'],
								   'text' => $orders_list['orders_id']." - ".tep_date_short($orders_list['date_purchased']));
   } 
   echo '  ' . tep_draw_pull_down_menu('start', $orders_list_array, (isset($_GET['orders_id']) ? $_GET['orders_id'] : ''), 'size="1"') . '   ';
  ?></td>
				  </tr>
				  <tr>
				    <td><?php echo INPUT_END; ?></td>
				    <td><!-- <input name="end" size="5" value="<?php echo $end; ?>"> -->
					  <?php
  echo '  ' . tep_draw_pull_down_menu('end', $orders_list_array, (isset($_GET['orders_id']) ? $_GET['orders_id'] : ''), 'size="1"') . '   ';
  ?></td>
				  </tr>
				  <tr>
				    <td> </td>
				    <td><input type="submit" value="<?php echo INPUT_VALID; ?>"></td>
				  </tr>
			    </table>
			    <input type="hidden" name="submitted" value="1">
			  </form></td>
		  </tr>
		  <tr>
		    <td><?php echo INPUT_DESC; ?></td>
		  </tr>
		  <tr>
		    <td> </td>
		  </tr>
		  <tr>
		    <td> </td>
		  </tr>
	    </table></td>
    </tr>
  </table></td>
 </tr>
</table>
<!-- footer //-->
<?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
<!-- footer_eof //-->
</body>
</html>
<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>
<?php
}
// submitted so generate csv if the form is submitted
else
{
generatecsv($_GET['start'], $_GET['end']);
}
// generates csv file from $start order to $end order, inclusive
function generatecsv($start, $end)
{
//Placing columns names in first row
$delim =  ';' ;
$csv_output .= "Orders_id".$delim;
$csv_output .= "Date".$delim;
$csv_output .= "Time".$delim;
$csv_output .= "First_Name".$delim;
$csv_output .= "Last_Name".$delim;
$csv_output .= "Name_On_Card".$delim;
$csv_output .= "Company".$delim;
$csv_output .= "email".$delim;
$csv_output .= "Billing_Address_1".$delim;
$csv_output .= "Billing_Address_2".$delim;
$csv_output .= "Billing_City".$delim;
$csv_output .= "Billing_State".$delim;
$csv_output .= "Billing_Zip".$delim;
$csv_output .= "Billing_Country".$delim;
$csv_output .= "Billing_Phone".$delim;
$csv_output .= "ShipTo_First_Name".$delim;
$csv_output .= "ShipTo_Last_Name".$delim;
$csv_output .= "ShipTo_Name".$delim;
$csv_output .= "ShipTo_Company".$delim;
$csv_output .= "ShipTo_Address_1".$delim;
$csv_output .= "ShipTo_Address_2".$delim;
$csv_output .= "ShipTo_City".$delim;
$csv_output .= "ShipTo_State".$delim;
$csv_output .= "ShipTo_Zip".$delim;
$csv_output .= "ShipTo_Country".$delim;
$csv_output .= "ShipTo_Phone".$delim;
//$csv_output .= "Card_Type".$delim;
//$csv_output .= "Card_Number".$delim;
//$csv_output .= "Exp_Date".$delim;
//$csv_output .= "Bank_Name".$delim;
//$csv_output .= "Gateway".$delim;
//$csv_output .= "AVS_Code".$delim;
$csv_output .= "Transaction_ID".$delim;
$csv_output .= "Order_Special_Notes".$delim;
$csv_output .= "Comments".$delim;
$csv_output .= "Order_Subtotal".$delim;
$csv_output .= "Order_Tax".$delim;
$csv_output .= "Order_Insurance".$delim;
$csv_output .= "Tax_Exempt_Message".$delim;
$csv_output .= "Order_Shipping_Total".$delim;
//$csv_output .= "Small_Order_Fee".$delim;
//$csv_output .= "Discount_Rate".$delim;
//$csv_output .= "Discount_Message".$delim;
//$csv_output .= "CODAmount".$delim;
$csv_output .= "Order_Grand_Total".$delim;
$csv_output .= "Number_of_Items".$delim;
$csv_output .= "Shipping_Method".$delim;
$csv_output .= "Shipping_Weight".$delim;
//$csv_output .= "Coupon_Code".$delim;
//$csv_output .= "Order_security_msg.".$delim;
//$csv_output .= "Order_Surcharge_Amount".$delim;
//$csv_output .= "Order_Surcharge_Something".$delim;
//$csv_output .= "Affiliate_code".$delim;
//$csv_output .= "Sentiment_message".$delim;
//$csv_output .= "Checkout_form_type".$delim;
//$csv_output .= "Card_CVV_value".$delim;
//$csv_output .= "future1".$delim;
//$csv_output .= "future2".$delim;
//$csv_output .= "future3".$delim;
//$csv_output .= "future4".$delim;
//$csv_output .= "future5".$delim;
//$csv_output .= "future6".$delim;
//$csv_output .= "future7".$delim;
//$csv_output .= "future8".$delim;
//$csv_output .= "future9".$delim;
//$csv_output .= "Remarks".$delim;
//$csv_output .= "ProductId".$delim;
$csv_output .= "Product_Price".$delim;
//$csv_output .= "Number".$delim;
$csv_output .= "Product".$delim;
//$csv_output .= "Attribute".$delim;
//$csv_output .= "Attribute_Value".$delim;
$csv_output .= "\n";

//End Placing columns in first row
// Patch dlan
// if both fields are empty we select all orders
if ($start=="" && $end=="") {
$orders = tep_db_query("SELECT orders_id, date_purchased, customers_name, customers_id, cc_owner, customers_company, customers_email_address, billing_street_address, billing_city, billing_state, billing_postcode, billing_country, customers_telephone, delivery_name, delivery_company, delivery_street_address, delivery_city, delivery_state, delivery_postcode, delivery_country, cc_type, cc_number, cc_expires
FROM orders ORDER BY orders_id");
// if $start is empty we select all orders up to $end
} else if($start=="" && $end!="") {
$orders = tep_db_query("SELECT orders_id, date_purchased, customers_name, customers_id, cc_owner, customers_company, customers_email_address, billing_street_address, billing_city, billing_state, billing_postcode, billing_country, customers_telephone, delivery_name, delivery_company, delivery_street_address, delivery_city, delivery_state, delivery_postcode, delivery_country, cc_type, cc_number, cc_expires
FROM orders WHERE orders_id <= $end ORDER BY orders_id");
// if $end is empty we select all orders from $start
} else if($start!="" && $end=="") {
$orders = tep_db_query("SELECT orders_id, date_purchased, customers_name, customers_id, cc_owner, customers_company, customers_email_address, billing_street_address, billing_city, billing_state, billing_postcode, billing_country, customers_telephone, delivery_name, delivery_company, delivery_street_address, delivery_city, delivery_state, delivery_postcode, delivery_country, cc_type, cc_number, cc_expires
FROM orders WHERE orders_id >= $start ORDER BY orders_id");
// if both fields are filed in we select orders betwenn $start and $end
} else {
$orders = tep_db_query("SELECT orders_id, date_purchased, customers_name, customers_id, cc_owner, customers_company, customers_email_address, billing_street_address, billing_city, billing_state, billing_postcode, billing_country, customers_telephone, delivery_name, delivery_company, delivery_street_address, delivery_city, delivery_state, delivery_postcode, delivery_country, cc_type, cc_number, cc_expires
FROM orders WHERE orders_id >= $start AND orders_id <= $end ORDER BY orders_id");
}
//patch
//$csv_output ="\n";
while ($row_orders = mysql_fetch_array($orders)) { //start one loop

$csv_output_ordersbefore = $csv_output;
$Orders_id = $row_orders["orders_id"];
$customers_id = $row_orders["customers_id"];
$Date1 = $row_orders["date_purchased"];
//list($Date, $Time) = explode (' ',$Date1);
$Date = date('m/d/Y', strtotime($Date1));
$Time= date('H:i:s', strtotime($Date1));
$Name_On_Card1 = $row_orders["customers_name"];
$Name_On_Card = filter_text($Name_On_Card1);// order changed
list($First_Name,$Last_Name) = explode(' ',$Name_On_Card1); // order changed
$Company = filter_text($row_orders["customers_company"]);
$email = filter_text($row_orders["customers_email_address"]);
$Billing_Address_1 = filter_text($row_orders["billing_street_address"]);
$Billing_Address_2 = "";
$Billing_City = filter_text($row_orders["billing_city"]);
$Billing_State = filter_text($row_orders["billing_state"]);
$Billing_Zip = filter_text($row_orders["billing_postcode"]);
$Billing_Country = str_replace("(48 Contiguous Sta", "", $row_orders["billing_country"]);
$Billing_Phone = filter_text($row_orders["customers_telephone"]);
$ShipTo_Name1 = $row_orders["delivery_name"];
$ShipTo_Name = filter_text($ShipTo_Name1); // order changed
list($ShipTo_First_Name,$ShipTo_Last_Name) = explode(' ',$ShipTo_Name1); // order changed
$ShipTo_Company = filter_text($row_orders["delivery_company"]);
$ShipTo_Address_1 = filter_text($row_orders["delivery_street_address"]);
$ShipTo_Address_2 = "";
$ShipTo_City = filter_text($row_orders["delivery_city"]);
$ShipTo_State = filter_text($row_orders["delivery_state"]);
$ShipTo_Zip = filter_text($row_orders["delivery_postcode"]);
$ShipTo_Country = str_replace("(48 Contiguous Sta", "", $row_orders["delivery_country"]);
$ShipTo_Phone = "";
$Card_Type = $row_orders["cc_type"];
$Card_Number = $row_orders["cc_number"];
$Exp_Date = $row_orders["cc_expires"];
$Bank_Name = "";
$Gateway  = "";
$AVS_Code = "";
$Transaction_ID = "";
$Order_Special_Notes = "";

// --------------------    QUERIES 1  ------------------------------------//
//Orders_status_history for comments
$orders_status_history = tep_db_query("select comments from orders_status_history
where orders_id = " . $Orders_id);
//$row_orders_status_history = tep_db_fetch_array($comments);
while($row_orders_status_history = mysql_fetch_array($orders_status_history)) {
// end //
$Comments = filter_text($row_orders_status_history["comments"]);
}
// --------------------    QUERIES 2  ------------------------------------//
//Orders_subtotal
$orders_subtotal = tep_db_query("select value from orders_total
where class = 'ot_subtotal' and orders_id = " . $Orders_id);
//$row_orders_subtotal = tep_db_fetch_array($orders_subtotal);
while($row_orders_subtotal = mysql_fetch_array($orders_subtotal)) {
// end //
$Order_Subtotal = filter_text($row_orders_subtotal["value"]);
}
// --------------------    QUERIES 3  ------------------------------------//
//Orders_tax
$orders_tax = tep_db_query("select value from orders_total
where class = 'ot_tax' and orders_id = " . $Orders_id);
//$row_orders_tax = tep_db_fetch_array($orders_tax);
while($row_orders_tax = mysql_fetch_array($orders_tax)) {
// end //
$Order_Tax = filter_text($row_orders_tax["value"]);
}
// --------------------    QUERIES 4  ------------------------------------//
//Orders_Insurance
$orders_insurance = tep_db_query("select value from orders_total
where class = 'ot_insurance' and orders_id = " . $Orders_id);
//$row_orders_insurance = tep_db_fetch_array($orders_insurance);
while($row_orders_insurance = mysql_fetch_array($orders_insurance)) {
// end //
$Order_Insurance = filter_text($row_orders_insurance["value"]);
}
$Tax_Exempt_Message = "";
// --------------------    QUERIES 5  ------------------------------------//
//Orders_Shipping
$orders_shipping = tep_db_query("select title, value from orders_total
where class = 'ot_shipping' and orders_id = " . $Orders_id);
//$row_orders_shipping = tep_db_fetch_array($orders_shipping);
while($row_orders_shipping = mysql_fetch_array($orders_shipping)) {
// end //
$Order_Shipping_Total = $row_orders_shipping["value"];
$Shipping_Method = filter_text($row_orders_shipping["title"]); // Shipping method from query 5
}
// --------------------    QUERIES 6  ------------------------------------//
//Orders_Residential Del Fee (Giftwrap)
$orders_residential_fee = tep_db_query("select value from orders_total
where class = 'ot_giftwrap' and orders_id = " . $Orders_id);
//$row_orders_residential_fee = tep_db_fetch_array($orders_residential_fee);
while($row_orders_residential_fee = mysql_fetch_array($orders_residential_fee)) {
// end //
$Small_Order_Fee = $row_orders_residential_fee["value"];
}
////////////////////////////////////
$Discount_Rate = "";
$Discount_Message  = "";
$CODAmount  = "";
// --------------------    QUERIES 7  ------------------------------------//
//Orders_Total
$orders_total = tep_db_query("select value from orders_total
where class = 'ot_total' and orders_id = " . $Orders_id);
//$row_orders_total = tep_db_fetch_array($orders_total);
while($row_orders_total = mysql_fetch_array($orders_total)) {
// end //
$Order_Grand_Total = $row_orders_total["value"];
}
// --------------------    QUERIES 8  ------------------------------------//
//Products COunt
$orders_count = tep_db_query("select count(products_quantity) as o_count from orders_products
where orders_id = " . $Orders_id);
//$row_orders_total = tep_db_fetch_array($orders_total);
while($row_orders_count = mysql_fetch_array($orders_count)) {
// end //
$Number_of_Items = $row_orders_count[0]; // used array to show the number of items ordered
}
//
$Shipping_Weight = "";
$Coupon_Code = "";
$Order_security_msg = "";
$Order_Surcharge_Amount = "";
$Order_Surcharge_Something = "";
$Affiliate_code = "";
$Sentiment_message = "";
$Checkout_form_type = "";
$Card_CVV_value = $row_orders["cvvnumber"];
$future1  = "";
$future2 = "";
$future3 = "";
$future4 = "";
$future5 = "";
$future6 = "";
$future7 = "";
$future8 = "";
$future9 = "";
// csv settings
$CSV_SEPARATOR = ";";
$CSV_NEWLINE = "\r\n";
$csv_output .= $Orders_id . ";" ;
$csv_output .= $Date . ";" ;
$csv_output .= $Time . ";" ;
$csv_output .= $First_Name . ";" ;
$csv_output .= $Last_Name . ";" ;
$csv_output .= $Name_On_Card . ";" ;
$csv_output .= $Company . ";" ;
$csv_output .= $email . ";" ;
$csv_output .= $Billing_Address_1 . ";" ;
$csv_output .= $Billing_Address_2 . ";" ;
$csv_output .= $Billing_City . ";" ;
$csv_output .= $Billing_State . ";" ;
$csv_output .= $Billing_Zip . ";" ;
$csv_output .= $Billing_Country . ";" ;
$csv_output .= $Billing_Phone . ";" ;
$csv_output .= $ShipTo_First_Name . ";" ;
$csv_output .= $ShipTo_Last_Name . ";" ;
$csv_output .= $ShipTo_Name . ";" ;
$csv_output .= $ShipTo_Company . ";" ;
$csv_output .= $ShipTo_Address_1 . ";" ;
$csv_output .= $ShipTo_Address_2 . ";" ;
$csv_output .= $ShipTo_City . ";" ;
$csv_output .= $ShipTo_State . ";" ;
$csv_output .= $ShipTo_Zip . ";" ;
$csv_output .= $ShipTo_Country . ";" ;
$csv_output .= $ShipTo_Phone . ";" ;
//$csv_output .= $Card_Type . ";" ;
//$csv_output .= $Card_Number . ";" ;
//$csv_output .= $Exp_Date . ";" ;
//$csv_output .= $Bank_Name . ";" ;
//$csv_output .= $Gateway . ";" ;
//$csv_output .= $AVS_Code . ";" ;
$csv_output .= $Transaction_ID . ";" ;
$csv_output .= $Order_Special_Notes . ";" ;
$csv_output .= $Comments . ";" ;
$csv_output .= $Order_Subtotal . ";" ;
$csv_output .= $Order_Tax . ";" ;
$csv_output .= $Order_Insurance . ";" ;
$csv_output .= $Tax_Exempt_Message . ";" ;
$csv_output .= $Order_Shipping_Total . ";" ;
//$csv_output .= $Small_Order_Fee . ";" ;
//$csv_output .= $Discount_Rate . ";" ;
//$csv_output .= $Discount_Message . ";" ;
//$csv_output .= $CODAmount . ";" ;
$csv_output .= $Order_Grand_Total . ";" ;
$csv_output .= $Number_of_Items . ";" ;
$csv_output .= $Shipping_Method . ";" ;
$csv_output .= $Shipping_Weight . ";" ;
//$csv_output .= $Coupon_Code . ";" ;
//$csv_output .= $Order_security_msg . ";" ;
//$csv_output .= $Order_Surcharge_Amount . ";" ;
//$csv_output .= $Order_Surcharge_Something . ";" ;
//$csv_output .= $Affiliate_code . ";" ;
//$csv_output .= $Sentiment_message . ";" ;
//$csv_output .= $Checkout_form_type . ";" ;
//$csv_output .= $Card_CVV_value . ";" ;
//$csv_output .= $future1 . ";" ;
//$csv_output .= $future2 . ";" ;
//$csv_output .= $future3 . ";" ;
//$csv_output .= $future4 . ";" ;
//$csv_output .= $future5 . ";" ;
//$csv_output .= $future6 . ";" ;
//$csv_output .= $future7 . ";" ;
//$csv_output .= $future8 . ";" ;
//$csv_output .= $future9 ;
// --------------------    QUERIES 9  ------------------------------------//
//Get list of products ordered
$orders_products = tep_db_query("select products_model, products_price, products_quantity, products_name, orders_products_id from orders_products
where orders_id = " . $Orders_id);
// While loop to list the item

$countproducts = 0;
$csv_output_item = "";
$csv_output_order = str_replace($csv_output_ordersbefore, "", $csv_output);
while($row_orders_products = mysql_fetch_array($orders_products)) {
// loop through orders
// More than one product per order, new line

if ($countproducts>0){
 $csv_output .= "\n";

 $csv_output .= $csv_output_order;

 $csv_output_item = "";
}

$csv_output_item .= "," . "BEGIN_ITEM". "," ;
$csv_output_item .= ",";
$csv_output_item .= filter_text($row_orders_products[0]) . ";" ;
$csv_output_item .= $row_orders_products[1] . ";" ;
$csv_output_item .= $row_orders_products[2] . ";" ;
$csv_output_item .= filter_text($row_orders_products[3]) . ";" ;
$Products_id = $row_orders_products[4];
$orders_products_attributes = tep_db_query("select products_options, products_options_values from orders_products_attributes
where orders_id = " . $Orders_id . " and orders_products_id  = " . $Products_id);

while($row_orders_products_attributes = mysql_fetch_array($orders_products_attributes)) {
 $csv_output_item .= filter_text($row_orders_products_attributes[0]) . "," ;
 $csv_output_item .= filter_text($row_orders_products_attributes[1]) . "," ;
}
$csv_output_item .= "END_ITEM";

$csv_output .= $csv_output_item;

$countproducts += 1;
}
// end while loop for products
// --------------------------------------------------------------------------//
$csv_output .= "\n";
} // while loop main first
//print
header("Content-Type: application/force-download\n");
header("Cache-Control: cache, must-revalidate");  
header("Pragma: public");
header("Content-Disposition: attachment; filename=ordersexports_" . date("Ymd") . ".csv");
print $csv_output;
 exit;
}//function main
function filter_text($text) {
$filter_array = array(",","\r","\n","\t");
return str_replace($filter_array,"",$text);
} // function for the filter
?>

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...