Avatar billede lotte48 Nybegynder
01. marts 2006 - 16:12 Der er 8 kommentarer og
3 løsninger

C5 - ver.3 sp3 - DebSalgsstatistik

Jeg vil gerne indsætte et felt ved siden af hver omsætningskolonne i DebSalgsstatistik, som viser hvor mange ordrer der er oprettet med kunden i de valgte perioder.
Dvs. ikke hvor mange ordrer der indgår i omsætningen - men hvor mange der er oprettet - til levering nu eller senere.

Hvordan kan jeg lave sådan en optælling i denne rapport ??
(evt. i en anden rapport, som indeholder omsætning/kunde/periode - hvis det er smartere)

/Lotte
Avatar billede mariaf Juniormester
01. marts 2006 - 16:32 #1
To variabler og en searchløkker med et par IF omkring datoer i Pre-output. Lad løkken gennemløbe ordrekart med kundenr som nøgle og med datoerne som IF-afgrænsninger. Lad tællerne tælle ordreantal op. Husk at nulstille dine tællere efter at de er udskrevet - ellers tæller den videre :-)
Avatar billede lotte48 Nybegynder
01. marts 2006 - 23:40 #2
Jamen det lyder sørme ligetil og nemt.....
Jeg kan bare ikke lave det.... desværre.... og jeg skal
bruge der før jeg kan få anden hjælp. Jeg kan læse, og
forstå, hvad der sker, når jeg ser koderne - men ikke selv kreere.
Kan jeg kan lokke dig til at hjælpe detaljeret

/Lotte (LivsLys)
Avatar billede mariaf Juniormester
02. marts 2006 - 07:59 #3
Prøver:
I Inittriggeren laves INT &Tæller1, INT &Tæller2
I preoutput startes med at sætte &Tæller1 = 0  &Tæller2 = 0
I pre-output laves følgende løkke: Search Ordkart Using KontoIdx Where Ordkart.konto=Debkart.konto
IF Oprettet <= &Tildato AND OPrettet >= &Fradato THEN #Add(&Tæller1,1) ENDIF
IF OPrettet <= PrevYr(&Fradato) AND Oprettet >= PrevY(&Fradato) THEN #Add(&tæller2,1)
END

Nu har du fået optalt og skal bare lægge tæller1 og tæller2 på din udskrift.
Avatar billede lotte48 Nybegynder
02. marts 2006 - 14:27 #4
-> Maria
Det hjalp mig godt på vej - og jeg har næsten fået det til at fungere.
Det der mangler i koden - fandt jeg frem til i andre rapporter :-)
Men....  jeg får en optælling af alle de status en ordre gennemløber
og det er jo lidt rigeligt. Et ordrenummer skal kun tælles med een gang
- og den skal ikke med, hvis det 'kun' er et tilbud.
Kan man sætte at 'status' skal være = et eller andet ?

Vil du inspirere lidt - så jeg får den detalje med ?

/Lotte (Livslys)
Avatar billede lotte48 Nybegynder
02. marts 2006 - 15:12 #5
-> Maria
Glemte lige at sige, at det kun er åbne ordrenumer, der
ligger i OrdKart - så det ikke gav noget resultat at tælle der.
Vel nok fordi ordrerne slettes der, når de er faktureret.
Jeg ænderde til OrdKartArkiv - derfor får jeg talt alle transaktioner,
der har været på nummeret.

/Lotte
Avatar billede mariaf Juniormester
02. marts 2006 - 20:55 #6
Ja, det er ikke nemt at "håndkode". Normalt har vi jo hjælp i genvejstaster og opslag, så der kan smutte lidt i farten.
For at holde styr på at et ordrenummer kun tælles med en gang, skal du holde styr på nummeret.
I init en ekstra variabel, STR 10 &nr
Efter search men før IF-sætningerne skal der laves en ekstra IF
IF &nr <> Ordkartarkiv.nummer THEN

Og lige før end (fra search-løkken) skal der stå SET &Nr = Ordkartarkiv.Nummer
Så tror jeg den kører.
Avatar billede lotte48 Nybegynder
09. marts 2006 - 13:32 #7
test
Avatar billede lotte48 Nybegynder
09. marts 2006 - 13:36 #8
-> Maria
Jeg kan simpelthen ikke få tælleren til at tælle korrekt
og jeg vil også gerne have en total for kolonnen, ligesom
den der gives for beløb.

Har du lidt tid til at 'luse' ud i koden - som jeg sender nedenfor ?
Der tælles ikke noget, hvis jeg ikke har "AND OrdKartArkiv.Lagerstatus >=0"
med i Search....  værdien kan ikke være =0, men den kan være op til <=4.

Jeg er på glatis....

/Lotte /(Livslys)
Avatar billede lotte48 Nybegynder
09. marts 2006 - 13:37 #9
&#9632; Init &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;#MacroLoad(REPORTS)
#MacroLoad(DEBITOR_RAPPORT)
#MacroLoad(ParametreDebitor)
#MacroLoad(ParametreOrdre)

#Variable

ENUM NejJa  &VbInclSlutrabat = #DebDBinclSlutrabat  {Varebeløb incl. Slutrabat

INT &Tæller1
INT &Tæller2
INT &Tæller3
INT &Counter
STR 10 &nr




&#9632; Pre-output

#MacroLoad(QUERY)
#MacroLoad(REPORTS)
#MacroLoad(REPORT)
#MacroLoad(ParametreLager)
#MacroLoad(ParametreDebitor)
#MacroLoad(ParametreOrdre)

#Statistik
#ADD(&Tæller1, &Tæller2, &Tæller3)


SET &Tæller1 = 0
SET &Tæller2 = 0
SET &Tæller3 = 0
SET &Counter = 0

Search OrdKartArkiv Using KontoIdx Where OrdKartArkiv.konto == DebKart.konto
                              AND OrdKartArkiv.Lagerstatus >=0
IF &nr <> OrdKartArkiv.nummer THEN
IF Oprettet <= &Tildato AND Oprettet >= &Fradato
    THEN #Add(&Tæller1,1) 
      ENDIF
IF Oprettet <= PrevYr(&Tildato) AND Oprettet >= PrevYr(&Fradato)
    THEN #Add(&Tæller2,1)
      ENDIF
IF Oprettet <= PrevYr(PrevYr(&TilDato)) AND Oprettet >= PrevYr(PrevYr(&FraDato
    THEN #Add(&Tæller3,1)
        ENDIF
    ENDIF

SET &nr = OrdKartArkiv.Nummer

//SET &Tæller1 = 0
//SET &Tæller2 = 0
//SET &Tæller3 = 0
//SET &Counter = 0

END
Avatar billede lotte48 Nybegynder
09. marts 2006 - 13:41 #10
Slutparanteserne er OK her:
PrevYr(PrevYr(&FraDato))
Avatar billede lotte48 Nybegynder
29. marts 2006 - 08:47 #11
Tak for hjælpen

/Lotte
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