Avatar billede lotte48 Nybegynder
13. oktober 2003 - 12:30 Der er 7 kommentarer og
2 løsninger

Toldnote på faktura uden for EU

Når vi fakturerer til et land uden for EU,
skal der indsættes en toldnote på fakturaen,
som oplyser om oprindelsesland.

Der faktureres med engelsk tekstlag nu, og vi
vil gerne at det kun er landene uden for EU,
som får påført denne toldnote.

Hvordan kan man "styre" det?

/Lotte
Avatar billede dma Nybegynder
13. oktober 2003 - 12:42 #1
Du kan lave et antal linier med linietypen Control hvor teksten står.

I Postbody på OrdKart i søgeboksen, kan du - som det allerførste - lave følgende kode:

IF OrdKartArkiv.Language == 1 THEN
    #Rep_EXECUTE(99)
ENDIF

forudsat at sprogkode 1 = engelsk (Sprogkode 0 = Dansk) og at du opretter control linierne med nummer 99
Avatar billede nilfri Nybegynder
13. oktober 2003 - 17:17 #2
(Jeg antager, det er C5?)

dma's svar forudsætter, at I ikke fakturerer på engelsk til EU-lande.

Hvis I gør, bliver I nødt til - udover sprog - at have styr på land (dvs. om det er udenfor EU) på den ene eller anden måde.

Måske har I en debitorgruppe, der udelukkende er til 3. lande?
Måske har I momsnummer på samtlige kunder indenfor EU - og kun dem?
Måske kunne I checke på køberens hjemland; mere bøvlet, fordi I så skal lave liste med EU-lande og en NOT betingelse?

Der er naturligvis flere muligheder - og kun nødvendige, hvis I fakturerer på engelsk indenfor EU.

Ellers funker dma's svar uden problemer.
Avatar billede lotte48 Nybegynder
13. oktober 2003 - 22:39 #3
Ja - og undskyld - for det er C5 ver. 2.10.4, som I nok begge husker fra andre indlæg.

Jeg kunne godt tænke mig dma's forslag, men som enten momskode eller debitorgruppe.......  hvad gør jeg så i stedet?
For det er rigtigt, at vi anvender både engelsk og tysk tekstlag.

dma:  jeg har ikke lige C5'eren her - så hvad mener du med at jeg skal oprette control linierne med nummer 99?? Hvad står 99 for?

/Lotte
Avatar billede nilfri Nybegynder
13. oktober 2003 - 23:06 #4
Når du anvender linietypen Ctrl (1. kolonne), indtaster du en "kontrol/styrenummer" i tabelkolonnen (2. kolonne).

Ctrl-linierne er faktisk de eneste linier, der ikke "af sig selv" bliver udskrevet. Udskrift kræver en execute et sted i koden.

Dermed har du meget fleksible muligheder for at execute (udføre/skrive) lige nøjagtigt de relevante linier i det enkelte tilfælde. Som i DMA's eksempel når sproget er Engelsk.

Som jeg læser din skriv, anvender I tysk- og engelsksprogede fakturaer både indenfor og udenfor EU?

I så fald skal du lave Ctrl-linier for hvert sprog (vha. kontrolnummeret)

Du skal udvide DMA's kode til også at checke på det ekstra felt (hvad du nu vælger), fx. momskode:

IF OrdKartArkiv.Language == 1 AND OrdKartArkiv.Momsnummer == "" THEN
  #Rep_EXECUTE(99)
  ELSE
  IF OrdKartArkiv.Language == 2 AND OrdKartArkiv.Momsnummer == "" THEN
    #Rep_EXECUTE(98)
  ENDIF
ENDIF

[Jeg har ikke afprøvet koden!]

Dvs. toldnoten på engelsk skal ind i en/flere linier med linietypen Ctrl og nummer 99
Dvs. toldnoten på tysk skal ind i en/flere linier med linietypen Ctrl og nummer 98
osv - hvis du nu opdager, at du har endnu flere sproglag :o)

Men det kræver selvklart, at nedenstående er overholdt:
Måske har I momsnummer på samtlige kunder indenfor EU - og kun dem?
Avatar billede lotte48 Nybegynder
14. oktober 2003 - 09:10 #5
"kontrol/styrenummer" ....  jeg har ikke helt check på, hvad det er.
Er det valgfrit hvad man sætter ind der - så det blot i dette tilfælde er 99, 98 osv.  Eller er der en dybere mening med, at det netop er disse tal.

/Lotte  (som har skrevet dette indlæg een gang før, men det må være smuttet i forsendelsen)
Avatar billede nilfri Nybegynder
14. oktober 2003 - 10:00 #6
Ja, de er helt valgfri. Eneste krav er naturligvis, at de matcher de relevante execute :o)

Det blev vist lidt sent i går :{ Du burde kunne nøjes med et sæt kontrollinier og sløjfe det meste af koden, fordi Ctrl-linierne - så vidt jeg husker - også bliver placeret i sproglaget.

Dermed burde du kunne nøjes med

IF OrdKartArkiv.Momsnummer == "" THEN
  #Rep_EXECUTE(99)
ENDIF

Jeg har dog ikke prøvet det af, og er ikke - som dma - kodeka'l...

Du kunne jo starte med den simple udgave, og hvis jeg husker forkert, tilføje resten af koden.
Avatar billede dma Nybegynder
14. oktober 2003 - 10:39 #7
Jeg var vist lidt for hurtig i mit kodeforslag, som nilfri så udemærket anfører. Det kan dog klares bedre endnu.

I Landekartoteket (Generelt/Kartotek/Landekoder) er der en landetype. Vi kan derfor med koden lave et opslag som checker at der her står "EFTA-land" eller 3. land" (dvs. hverken Indland eller EU-land).

IF Land[KodeIdx,OrdKartArkiv.Land].Type >= 2 THEN
    #Rep_EXECUTE(99)
ENDIF

Men du kan også vælge debitorgruppen:

IF DebKart[KontoIdx,OrdKartArkiv.FakturaKonto].Gruppe = "XXXX" THEN
.....

Mht. control linier, så er det linier som man kan styre uafhængigt af kartoteker. Når du står i rapportlayoutet er det den allerførste kolonne (hvor man kan vælge PgHd, Body osv). Gå ned i en tom linie, tryk ENTER i første kolonne og så får du valgmulighederne (læs evt. programmeringsmanualen om linietyper). Vælg "Control"
I næste kolonne - hvor man normalt vælger det kartotek som linien skal knyttes til, står der du et 0. Ved at trykke ENTER her, åbnes en boks hvor du kan indtaste et nummer mellem 1 og 255. Når du i en rapport så bruger kommandoen #Rep_EXECUTE(XX) hvor XX er nummeret, udskrives linie(r) med dette nummer.
På linien kan du nu skrive den tekst du gerne vil have ud, men HUSK at gøre det på alle de sproglag (Alt+Z) som du anvender.

Valget af numre er frit. Grunden til at jeg bruger 99 er, at C5 som standard oftest anvender numrene fra 1 og opefter. Så der ligger ikke noget specielt i valget af numre.

Håber det giver mening!

Til nilfri: Ja, alle felter placeres i alle sproglag, men tekster/ledetekster skal angives for hvert sproglag.
Avatar billede lotte48 Nybegynder
29. oktober 2003 - 12:32 #8
Sådan gjorde jeg:

I Postbody på OrdKart i søgeboksen indsatte jeg:

IF Land[KodeIdx,OrdKartArkiv.Land].Type == 2 THEN
    #Rep_EXECUTE(99)
ENDIF

Og i layoutet indsatte jeg 4 stk. Ctrl-linier med
nummer 99 - og RETURN &SidsteSide i 3'die kolonnne.
Og selve toldnoten i layout-delen.

Herefter kommer teksten kun ud på formularer til
kunder i EFTA-lande  -  på den sidste side.

Og det virker......  tusind tak for hjælpen.

--> nilfri vil du lægge et svar, så vil jeg øge points,
så du får andel heri.

/Lotte
Avatar billede nilfri Nybegynder
29. oktober 2003 - 21:34 #9
Beklager jeg ikke lige huskede på landetype :o(  Det er naturligvis det perfekte valg, som dma ganske rigtigt påpeger.

Herligt det virker!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester