Seite 1 von 1

Amazon Japan

Verfasst: Mi, 29. Apr 2015 11:48
von Manfred
Supergeil,

ich habe einen Kunden, der verkauft jetzt über Amazon Japan. heute kam die erste Bestellung rein. Ein Teil in Hochdeutsch und das unwichtigste, die Adressdaten,..... Tja, was soll ich sagen. Da steht m.E. nur Schrott drin. Hat einer ne Ahnung was ich da machen muß? Es werden Textdateien verwendet, über die die Rückmeldungen von Amazon kommen. Ich denke mal, die Adressdaten sind in japanisch geschrieben, werden aber nicht von meinem Programm interpretiert. Drucken müßte ich dann später auch die japanischen Zeichen auf das Versandetikett. Ich bin begeistert.

Re: Amazon Japan

Verfasst: Mi, 29. Apr 2015 12:13
von Manfred
da werde ich wohl warten müssen, bis Jimmy aufgestanden ist? Der müßte dazu ja was sagen können.

Re: Amazon Japan

Verfasst: Mi, 29. Apr 2015 22:09
von AUGE_OHR
Manfred hat geschrieben:Der müßte dazu ja was sagen können.
mit JAPANischen Zeichen kenne ich mich nicht aus !

grundsätzlich gibt es 2 Wege :

1.) Font / Codepage / Unicode
2.) UTF-8 encode

zu 1.) ich meine damit einen Font wo man die Codepage einstellen kann. Empfehlung M$ Office ArialUNI.TTF
zu 2.) in Email etc. wird ja UTF-8 verwendet ...

da du nicht weisst wie die Japanischen Zeichen aussehen sollen würde ich mir paar Snapshops von den Adressen in Japanisch geben lassen.

ich habe meine Programme mit Function versehen welche auf ein Array mit dem Beschreibungen zugreift.
zur Eingabe gibt es ein Browse mit 3 Spalten : Deutsch, Englisch und Chinesisch was die User ausfüllen müssen.
das Browse hat nun den Vorteil das du "on-fly" den Font / Codepage wechseln kannst ... so lange bis es "passt".
ich muss mal das Demo raus suchen was ich dafür habe.

Re: Amazon Japan

Verfasst: Do, 30. Apr 2015 1:38
von AUGE_OHR
so hier nun das Beispiel zu Font / Codepage zum "on-fly" ändern in einem XbpBrowse

Code: Alles auswählen

   oBrowse:itemRbDown := {| aMousePos, aRowCol, oSelf | ;
                            ChangeFont(aRowCol, oSelf) }

PROCEDURE ChangeFont(aRowCol,oBrowse)
LOCAL oFontDlg
LOCAL oFnt
LOCAL nPosi  := aRowCol[2]
LOCAL OldFnt := oBrowse:GetColumn(nPosi):dataArea:setFont()

      oFontDlg := XbpFontDialog():new(oBrowse)  // Objekt erzeugen
      oFontDlg:familyName := OldFnt:familyName

      // Font-Dialog konfigurieren
      oFontDlg:create()                  // Dialog anfordern
      oFnt := oFontDlg:display()        // Dialog aktivieren

      IF oFnt <> NIL
         MSGBOX("Font :"+LTRIM(STR(oFnt:nominalPointSize))+"."+;
                         oFnt:compoundName+CHR(13)+" Codepage :"+;
                         LTRIM(STR(oFnt:codePage)) )

         oBrowse:GetColumn(nPosi):dataArea:setFont(oFnt)
         oBrowse:refreshall()
      ENDIF

RETURN
ich arbeite hier mit Font Objecten

Code: Alles auswählen

LOCAL oFnt1    := XBPFONT() :new()
LOCAL oFnt2    := XBPFONT() :new()

*  oFnt1:nominalPointSize := 10               // default
   oFnt1:familyName := "Arial Unicode MS"
   oFnt1:bold := .F.
   oFnt1:codePage := 186
   oFnt1:height   := 16
   oFnt1:width    := 6
   oFnt1:create()

   oFnt2:familyName := "Arial"
   oFnt2:bold := .F.
   oFnt2:codePage := 0
   oFnt2:create()

   //
   // Stack anlegen
   //
   _STACKINIT()
   //
   // Fonts ablegen
   //
   SP_Font( oFnt1 )
   SP_China( oFnt2 )
womit die ich Column präpariere

Code: Alles auswählen

   FOR i := 1 TO imax
      DO CASE
         CASE i = 1
            oBrowse:GetColumn( 1 ) :dataArea:setFont( SP_Font()  )

         CASE i = 2
            IF ID_CHINA
               oBrowse:GetColumn( 2 ) :dataArea:setFont( SP_China() )  // second font
            ELSE
               oBrowse:GetColumn( 2 ) :dataArea:setFont( SP_Font()  )
            ENDIF

         CASE i = 3
            oBrowse:GetColumn( 3 ) :dataArea:setFont( SP_Font()  )

         CASE i = 4
            IF ID_CHINA
               oBrowse:GetColumn( 4 ) :dataArea:setFont( SP_Font()  )
            ELSE
               oBrowse:GetColumn( 4 ) :dataArea:setFont( SP_China() )  // second font
            ENDIF
      ENDCASE
   NEXT