Einzelnen Beitrag anzeigen
  #1 (permalink)  
Alt 27-05-2013, 12:22
Janina
 Registrierter Benutzer
Links : Onlinestatus : Janina ist offline
Registriert seit: May 2013
Beiträge: 1
Janina befindet sich auf einem aufstrebenden Ast
Standard Smarty - Straße und Hausnummer trennen Problem

Hallo Leute!

undszwar weiß ich leider nicht mehr weiter.. ich habe mir am Wochenende ein Exportscript für DHL gebaut. Jedoch habe ich 2 Probleme mit dem Straßensplit script:

1. Straße und Hausnummer werden nicht getrennt wenn kein Leerzeichen zw. Hausnummer und Straße vorhanden ist.

2. Das Script hackt Straßennamen ab. Aus "Auf dem Daasberg 35" wurde beispielsweise "Auf dem Daasbe" 35

Das Script ist in 3 Bereiche eingeteilt:

1. Der bereits vorhandene Straßensplit Block
2. Die Umwandlung von Ländernamen in die ISO Codes
3. Die Exportfelder

Code:
{* strip sorgt dafür das wir keine Leerzeichen vorne und hinten haben *} 
{strip} 
 
   
{* Für jede Bestellung *} 
{foreach from=$orders item=order} 
 
{* Die Hausnummer von der Strasse zu trennen ist aufwendig *} 
{assign var="strassensplit" value=" "|explode:$order.order_del_street} 
 
{if $strassensplit|@count>0} 
{assign var="hausnummer" value=$strassensplit[$strassensplit|@count-1]} 
{assign var="hlength" value=$hausnummer|count_characters} 
{else} 
{assign var="hausnummer" value=""} 
{/if} 
 
{if $strassensplit|@count>0}  
{assign var="str" value=$order.order_del_street} 
{assign var="strlength" value=$str|count_characters} 
{assign var="strasseallein" value=$str|substr:0:($strlength-$hlength)} 
{else} 
{assign var="strasseallein" value=$order.order_del_street} 
{/if} 
{* Geschafft *} 
 
{* Land noch umwandeln *} 
{assign var="countryiso" value=$order.order_del_country} 
{if $order.order_del_country == "Deutschland"}{assign var="countryiso" value="DE"}{/if} 
{if $order.order_del_country == "Germany"}{assign var="countryiso" value="DE"}{/if} 
{if $order.order_del_country == "Österreich"}{assign var="countryiso" value="AT"}{/if} 
{if $order.order_del_country == "Austria"}{assign var="countryiso" value="AT"}{/if} 
{if $order.order_del_country == "Schweiz"}{assign var="countryiso" value="CH"}{/if} 
{if $order.order_del_country == "Switzerland"}{assign var="countryiso" value="CH"}{/if} 
{if $order.order_del_country == "Slowenien"}{assign var="countryiso" value="SI"}{/if} 
{if $order.order_del_country == "Spanien"}{assign var="countryiso" value="ES"}{/if} 
{if $order.order_del_country == "Portugal"}{assign var="countryiso" value="PT"}{/if} 
{if $order.order_del_country == "Frankreich"}{assign var="countryiso" value="FR"}{/if} 
{if $order.order_del_country == "Luxemburg"}{assign var="countryiso" value="LU"}{/if} 
{if $order.order_del_country == "Belgien"}{assign var="countryiso" value="BE"}{/if} 
{if $order.order_del_country == "Dänemark"}{assign var="countryiso" value="DK"}{/if} 
{if $order.order_del_country == "Niederlande"}{assign var="countryiso" value="NL"}{/if} 
{if $order.order_del_country == "Italien"}{assign var="countryiso" value="IT"}{/if} 
{if $order.order_del_country == "Griechenland"}{assign var="countryiso" value="GR"}{/if} 
 
{* INTRASHIP Auftragsimport  *} 
 
| 
{* 1 HIER MÜSSTE EINE NUMMERIERUNG DER ZEILEN REIN*}{$order.order_id}| 
U| 
| 
{* 2 Firmenname *}{$order.order_del_fname}| 
{* 3 Firmenname 2 *}{$order.order_del_lname}| 
{* 4 Firmenname 3 *}{$order.order_del_company}| 
{* 5 Zusatz *}{$order.order_del_addstreet}| 
{* 6 Strasse *}{$strasseallein}| 
{* 7 Hausnummer x *}{$hausnummer}| 
{* 8 Adresse 2 *}| 
{* 9 Adresse 3 *}| 
{* 10 PLZ *}{$order.order_del_zip}| 
{* 11 Stadt *}{$order.order_del_city}| 
{* 12 Land *}{$countryiso}| 
| 
{* 13 Telefon *}| 
{* 14 Fax *}| 
{* 15 Email *}{$order.order_bill_email}| 
{* 16 UST Nummer *}| 
| 
{* 17 Matchcode - Rechnungsnummer *}{$order.order_rnr}| 
{* 18 Kundennummer *}{$order.order_customernumber}| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
{* 19 Kundehandynr. *}| 
{* 20 Adresse3 *}| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
{$tag_r}{$tag_n} 
{/foreach} 
 
{/strip}
Ich hoffe ihr könnt mir da helfen..

Janina
Mit Zitat antworten