Posting in the Magento forums has been disabled pending the implementation of a new and improved forum solution which should better serve the community.

For new questions please post at magento.stackexchange.com, the community-run support site for the Magento community. We will be providing updates on the new forum solution soon. For questions or concerns please email community@magento.com.

Magento Forum

Datenbank export
 
sektorwerbung
Member
 
Total Posts:  37
Joined:  2009-02-17
 

Hey Leute,

ich muss einige Werte aus der Magento DB in eine andere Datenbank exportieren und komme gerade an einen Punkt wo ich mich frage, ob es nicht einfacher geht smile

Hier die Ãœberlegung:
Ich möchte die Bestellnummer etc. aus der sales_order in eine andere Datenbank übertragen, funktioniert so ganz gut. Jetzt möchte ich auch das der “Bezahlstatus” mit übergeben wird.

Wie ich durch langes suchen herausgefunden hab muss ich da über mehrere Tabellen gehen:

sales_order.entity_id == sales_flat_order_item.order_id ->
sales_flat_order_item.quote_item_id == sales_flat_quite_item.item_id ->
sales_flat_order_item.quote_id == sales_flat_quote_payment.quote_id ->

und benötigt wird der paypal_payer_status

Wie kann ich jetzt ne MySQL Abfrage machen ohne 3 oder 4 SELECT Befehle zu verwenden?
Kann man das mit JOIN LEFT realisieren?

Bin für jeden Rat dankbar !

 
Magento Community Magento Community
Magento Community
Magento Community
 
timste
Guru
 
Total Posts:  645
Joined:  2007-12-26
Leipzig
 

hallo,

warum willst du über die querys gehen wenn dir die API all das bietet?
schnell, einfach und vor allem sicher

was genau willst du aus magento wo rein haben?

gruss

 
Magento Community Magento Community
Magento Community
Magento Community
 
sektorwerbung
Member
 
Total Posts:  37
Joined:  2009-02-17
 

Hey,

ja das ist einwenig komplizierter da ich in meiner datenbank folgende Daten habe:
ticket_id
increment_id
order_id
name
artnr
item_id
status
validation

Erläuterung:
Die ticket_id ist eine automatisch aufsteigende Zahl. increment_id ist die Bestellnummer, order_id brauche ich eig. nicht jedoch is das für meine Abfrage wichtig das die drin steht. name ist die Artikelbezeichnung,. artnr ist die sku, item_id steht drin damit die einträge bei einem Cronjob nicht doppelt eingetragen werden. status wird an einer kartenkontrolle abgesegnet und dort mit 1 geändert (alle einträge mit 1 werden dann vom handscanner als bereits eingelöst angesehen) validation wird aus der sku gebildet und gibt ein Gültigkeitsdatum wieder.

Was habe ich eig. Vor:
Ich möchte alle bezahlten Bestellungen und die dazugehörigen Artikel mit einem Cronjob in eine andere Datenbank exportieren. Die Datenbank wird an einem PDA Scanner verbunden, damit ein barcode (die bestellnummer) gelesen werden kann, die Abfrage zur Datenbank soll dann ausgeben welche Tickets mit dieser Bestellnummer gekauft worden sind.

 
Magento Community Magento Community
Magento Community
Magento Community
 
Dscho
Sr. Member
 
Avatar
Total Posts:  236
Joined:  2007-10-05
Singen, Germany
 

Hallo,

also - ich muss Ricos Vorschlag zustimmen. Das würde ich auch mittels API lösen.

Um mit der API arbeiten zu können musst Du im Backend allerdings zuerst einen Webservice einrichten.
Dies ist im Menü unter Web Dienst zu finden. Bitte zuerst eine Gruppenbereichtung anlegen
und nicht vergessen diese dem Benutzer für Webdienste zuzuweisen. Die API sollte dann über http://youmagentohost/api/?wsdl oder http://youmagentohost/api/soap/?wsdl erreichbar sein.

Für den Umgang mit der API hatte ich kürzlich eine ausführliche Beschreibung zum Thema
Automatische Bestandupdates gepostet.
Schau Dir das einfach mal an. Weitere Infos mit Beispieln sind in der Doku zur API zu finden. http://www.magentocommerce.com/support/magento_core_api

Viele Grüße
Dscho

 
Magento Community Magento Community
Magento Community
Magento Community
 
sektorwerbung
Member
 
Total Posts:  37
Joined:  2009-02-17
 

Also ich hab mal son kleinen Test gemacht:

<?
$proxy 
= new SoapClient('http://meine-domain.de/onlinestore/api/soap/?wsdl');
$sessionID $proxy->login('controllapi','b3823');
$orders $proxy->call($sessionID'sales_order.list');

$i 0;

foreach (
$orders as $ord){
print_r 
($ord);

}

?>

Ergebnis daraus:

WarningSoapClient::SoapClient(http://meine-domain.de/onlinestore/api/soap/?wsdl) [soapclient.soapclient]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /opt/root/home/public_html/cardcontroll/cron_api.php on line 2

WarningSoapClient::SoapClient() [soapclient.soapclient]I/O warning failed to load external entity "http://meine-domain.de/onlinestore/api/soap/?wsdl" in /opt/root/home/public_html/cardcontroll/cron_api.php on line 2

Fatal error
Uncaught SoapFault exception[WSDL] SOAP-ERRORParsing WSDLCouldn't load from 'http://meine-domainde/onlinestore/api/soap/?wsdl' in /opt/root/home/public_html/cardcontroll/cron_api.php:2 Stack trace: #0 /opt/root/home/public_html/cardcontroll/cron_api.php(2): SoapClient->SoapClient('http://meine-domain...') #1 {main} thrown in /opt/root/home/public_html/cardcontroll/cron_api.php on line 2

Ich hab alles gemacht wie gesagt: 1. Gruppenberechtigung angelegt
2.Benutzer angelegt
3.Ein kleines Testscript geschrieben

Wo finde ich eigentlich alle Variablen wieder?
Ich kann nämlich nicht nachvollziehn wie z.B folgende Variablen zustande kommen:
$products_id = $product[’product_id’]; -> Woher weißt du das die product_id heißt? in der API Doku steht da nix von…

Danke und Grüße
Paul

 
Magento Community Magento Community
Magento Community
Magento Community
 
sektorwerbung
Member
 
Total Posts:  37
Joined:  2009-02-17
 

keiner ne Antwort?

 
Magento Community Magento Community
Magento Community
Magento Community
 
timste
Guru
 
Total Posts:  645
Joined:  2007-12-26
Leipzig
 

hm also was mir so auffällt das bei mir die url so aussieht

http://meine-domain.de/onlinestore/index.php/api/soap/?wsdl

versuche doch mal mit einer try catch anweisung den connect zu machen
vielleicht spuckt es dann ein fehler aus mit dem man arbeiten kann

gruss

 
Magento Community Magento Community
Magento Community
Magento Community
 
sektorwerbung
Member
 
Total Posts:  37
Joined:  2009-02-17
 

ja das mit meine-domain.de hab ich durch die eig. ersetzt… muss ja nicht jeder sehen an welchem projekt ich gerade arbeite smile
gibt ja nicht nur gutwillige member…

ich probiers mal mit dem try catch

 
Magento Community Magento Community
Magento Community
Magento Community
 
timste
Guru
 
Total Posts:  645
Joined:  2007-12-26
Leipzig
 

ich meinte was anderes

du hast http://meine-domain.de/onlinestore/api/soap/?wsdl

und ich habe http://meine-domain.de/onlinestore/index.php/api/soap/?wsdl

sprich das index.php/ noch drinne

gruss

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
Back to top