Omzetoverzicht zonder rapportageschema

JopjeJopje Member Posts: 50
edited 2005-09-23 in NAV Dutch speaking only
Hallo beste mensen van dit forum,

daar was ik weer met een vraagje:

Uitleg:
Ik moet nog steeds een jaaroverzicht geven voor een jaar, dit gedeelte is mij gelukt.

Als het rapport start dan kan men door middel van een flowfilter bijv. aangeven: 01-01-03..31-12-03 , dit geeft dan de omzetoverzicht over een jaar. Dit gaat dan vanuit een 'klantengroep' onderverdeeld in 'productgroepen'

Voorbeeld:

Klantengroepen_Omzet

Scholen
Pennen________10
Papier_________50
Inkt___________300

Kantoren
Pennen________40
Papier_________200
Inkt___________1200

Maar daarnaast wil ik dat er ook met het voorgaande jaar wordt vergeleken.
Mijn vraag is.. hoe doe ik dit?
(dus overzicht ernaast weergeven met het jaar ervoor)


Klantengroepen_Omzet{dit jaar}_Omzet{vorig jaar}

Scholen
Pennen________10___________5
Papier_________50___________25
Inkt___________300__________150

Kantoren
Pennen________40___________20
Papier_________200__________100
Inkt___________1200_________600

Bij voorbaat dank voor de hulp.

De omzet wordt uit een flowfield gehaald
(die een flowfilter meekrijgt op klantengroep en datum).
Remco de Jong
Bachelor of Business Administration and Information Technology
minor Application Development


" Don't use comma (,) use dot (.) "

Comments

  • Marije_BrummelMarije_Brummel Member, Moderators Design Patterns Posts: 4,262
    En daar was ik weer met een antwoord.

    Als ik je stukje proza goed ontleed en samenvat wil je van een datumfilter terug naar het vorige jaar.

    Ik ben geen report held maar je zou dit kunnen proberen:
    Filterdatum[1] := GETRANGEMIN("Date Filter");
    Filterdatum[2] := GETRANGEMAX("Date Filter");
    

    Dit geeft je de begindatum en de einddatum van je filter in normale datumvelden
    FilterLastYear:= FORMAT(CALCDATE('<-1Y>', Filterdatum[1])) + '..' + FORMAT(CALCDATE('<-1Y>', Filterdatum[2]));
    

    Dit trekt een jaar van de datums af en maakt er een nieuw datumfilter van.

    Dit filter kun je dan weer zetten op de grootboekrekeningen en dan kun je weer een calcfields doen van de bedragen.
  • JopjeJopje Member Posts: 50
    Ik zal het weer eens even proberen/doen..
    Het gaat alleen niet over de grootboekrekeningen,
    het gaat over:

    Gen. Business Posting Group
    _Gen. Product Posting Group (Deze heeft de 3 toegevoegde flowfields/filters)

    Gen. Product Posting Group
    50001_Sales Amount (Decimal)
    50002_Date Filter (Date)
    50003_Gen.Bus.Post.Group Filter (Code 10)

    Sales Amount
    Sum("Sales Invoice Line".Amount WHERE (Gen. Bus. Posting Group=FIELD(Gen.Bus.Post.Group Filter),Gen. Prod. Posting Group=FIELD(Code),Boekingsdatum=FIELD(Date Filter)))


    Dit is de constructie, zal datgene van U/jou eerst even proberen ;)
    Remco de Jong
    Bachelor of Business Administration and Information Technology
    minor Application Development


    " Don't use comma (,) use dot (.) "
  • Marije_BrummelMarije_Brummel Member, Moderators Design Patterns Posts: 4,262
    Het zal overal werken waar je een datumfilter hebt.

    En ik ben gewoon jij. 8)

    Dank U. :D
  • DenSterDenSter Member Posts: 8,307
    ... maarreeeh weetje wat ik wou joh hee, weetje wat ik wou?...... me wou dat ik u was....
  • Marije_BrummelMarije_Brummel Member, Moderators Design Patterns Posts: 4,262
    Jaja, zo kan ie wel weer, laten we het gezellig houden. :D
  • JopjeJopje Member Posts: 50
    Ik kan het wel begrijpen hoor :roll:

    Respect voor oude(re) mensen is wel op zijn plaats,
    zolang het later dan ook maar wordt gedaan als ik oud ben.
    :mrgreen:
    Remco de Jong
    Bachelor of Business Administration and Information Technology
    minor Application Development


    " Don't use comma (,) use dot (.) "
  • DenSterDenSter Member Posts: 8,307
    Je kan iemand u-toyeren, zonder iets van respect te tonen ;) laten we hier allemaal maar gewoon jij-en blijven.

    By the way Mark, dat was een Koot & Bie citaatje van de 'voor het hek' sketch, te vinden op De tweede langspeelplaat can het Simplisties Verbond.
  • Marije_BrummelMarije_Brummel Member, Moderators Design Patterns Posts: 4,262
    Kun je dat kopen in America dan?
  • JopjeJopje Member Posts: 50
    Respect of langspeelplaten?

    (dit gaat wel off-topic nu :P)
    Remco de Jong
    Bachelor of Business Administration and Information Technology
    minor Application Development


    " Don't use comma (,) use dot (.) "
  • DenSterDenSter Member Posts: 8,307
    Mijn Koot & Bie collectie was compleet op CD voordat ik naar de VS verhuisde :)
  • JopjeJopje Member Posts: 50
    Rec_Sales_Ref."Date Filter" := CALCDATE(Date_Ref_Filter);
    
    Nu komt er een melding:

    'De datumformule moet een tijdseenheid bevatten.'

    'Voorbeelden van tijdseenheden: D, WD, W, M, K of J.
    'L, lopende tijdseenheid, kan als prefix worden opgegeven bij tijdseenheid.'


    Mijn probleem hiermee is:
    - Waar moet het komen te staan?

    (Verder gebruik ik een stukje code van Brummel ::worshippie:: )
    Date_Ref_Start := GETRANGEMIN("Date Filter");
    Date_Ref_End := GETRANGEMAX("Date Filter");
    Date_Ref_Filter := FORMAT(CALCDATE('<-1Y>', Date_Ref_Start)) + '..' + FORMAT(CALCDATE('<-1Y>', Date_Ref_End));
    

    Ik denk zelf dat ik hem ergens erin moet 'plakken' bij Date_Ref_Filter..

    Bij voorbaat dank.
    Remco de Jong
    Bachelor of Business Administration and Information Technology
    minor Application Development


    " Don't use comma (,) use dot (.) "
  • Marije_BrummelMarije_Brummel Member, Moderators Design Patterns Posts: 4,262
    Ik denk dat je
    Rec_Sales_Ref.setfilter("Date Filter", Date_Ref_Filter); 
    

    bedoelt? :D
  • JopjeJopje Member Posts: 50
    Geen idee, nu geeft Navision een bericht dat de productboekingsgroep 'ACTIES' reeds aanwezig is :S
    "Gen. Product Posting Group".FIND('-');
    REPEAT
      Rec_Sales_Ref := "Gen. Product Posting Group";
      Rec_Sales_Ref.INSERT;
    UNTIL "Gen. Product Posting Group".NEXT = 0;
    

    Denk dat de fout hier zit... als ik // voor insert doe, zie ik overal 0 staan ;)
    en geen foutmelding meer..

    Zal weer even verder op onderzoek uit, ik laat je het weten zodra ik weer verder ben \:D/
    Remco de Jong
    Bachelor of Business Administration and Information Technology
    minor Application Development


    " Don't use comma (,) use dot (.) "
  • Marije_BrummelMarije_Brummel Member, Moderators Design Patterns Posts: 4,262
    Oei, pas maar op met inserts en deletes. 8-[

    Daar mocht ik niets mee doen toen ik begon met programmeren :D
  • JopjeJopje Member Posts: 50
    Okidokie, het is wel een temp.table dus, kan niet veel kwaad :twisted:


    Maar enige andere manieren/opties die ik kan gebruiken? :mrgreen:
    Remco de Jong
    Bachelor of Business Administration and Information Technology
    minor Application Development


    " Don't use comma (,) use dot (.) "
  • Marije_BrummelMarije_Brummel Member, Moderators Design Patterns Posts: 4,262
    Wordt een b-tje lastig zonder compleet overzicht. Mail het reportje anders maar ff als text-object.

    Op een tijdelijke variabele mag je natuurlijk altijd van alles uithalen wat je maar wilt, en programmeren doe je altijd in een kopie van de database dus veel kan er niet gebeuren. :D
  • JopjeJopje Member Posts: 50
    Ik zal mijn vorderingen hier ook plaatsen/delen..

    Dankzij Mark Brummel kan ik nu stukken vooruit,
    vriendelijk bedankt voor je inzicht en je kennis.

    Remco 8)
    Remco de Jong
    Bachelor of Business Administration and Information Technology
    minor Application Development


    " Don't use comma (,) use dot (.) "
  • JopjeJopje Member Posts: 50
    edited 2005-11-03
    Na wat overleg met Mark Brummel ben ik weer verder gekomen,
    echter nu heb ik een probleem met de filters:

    //Year of selection
    "Gen. Product Posting Group".SETFILTER("Date Filter" , Date_Filter);
    Sales_Amount := 0;
    Sales_Amount := Sales_Amount + "Sales Amount";
    
    //Year before
    "Gen. Product Posting Group".SETFILTER("Date Filter" , Date_Ref_Filter);
    Sales_Amount_Ref := 0;
    Sales_Amount_Ref := Sales_Amount_Ref + "Sales Amount";
    

    Dit zou in mijn ogen moeten werken, maar helaas doet ie dat niet..




    Zoals je kunt zien zijn ineens de waarden die in de variabele zijn gestopt hetzelfde? Of heeft het ermee te maken dat filters eerst worden verwerkt?

    ps. Gimme hints

    Bijna weekend [-o<
    Remco de Jong
    Bachelor of Business Administration and Information Technology
    minor Application Development


    " Don't use comma (,) use dot (.) "
  • Marije_BrummelMarije_Brummel Member, Moderators Design Patterns Posts: 4,262
    Bijna goed
    //Year of selection 
    SETFILTER("Date Filter" , Date_Filter); 
    calcfields(Sales Amount);
    Sales_Amount := "Sales Amount"; 
    
    //Year before 
    SETFILTER("Date Filter" , Date_Ref_Filter); 
    calcfields(Sales Amount);
    Sales_Amount_Ref := "Sales Amount";
    

    Ik neem aan dat "Gen. Product Posting Group" de DataItem is, dus dat hoeft er niet voor te staan.
  • JopjeJopje Member Posts: 50
    Dat was geen hint...

    maar ik zie wel in wat ik fout heb gedaan, ik zet wel een filter,
    maar bereken de velden niet opnieuw waardoor er niets wijzigt... #-o

    Daarnaast had ik de calcfields van jou in mail ook al gekregen, maar toen gebruikte ik de variabele.... :oops:

    Nu werkt ie gelukkig.. :P

    Maar je reageert wel snel zeg! :shock:
    Remco de Jong
    Bachelor of Business Administration and Information Technology
    minor Application Development


    " Don't use comma (,) use dot (.) "
  • Marije_BrummelMarije_Brummel Member, Moderators Design Patterns Posts: 4,262
    Ach, MiBuSo is een leuke afleiding van m'n normale programmeeractiviteiten.
    Soms heb je geluk en ben ik er, soms misschien niet.
  • JopjeJopje Member Posts: 50
    Helemaal mee eens, je kunt niet de hele dag als een zombie blijven programmeren ;) 8-[
    Remco de Jong
    Bachelor of Business Administration and Information Technology
    minor Application Development


    " Don't use comma (,) use dot (.) "
  • JopjeJopje Member Posts: 50
    edited 2005-11-03
    Dit is hem dan, de report... Alle belangrijke functies werken nu..

    Er komt nog wel wat kleine aanvulling bij:

    - Percentuele verschillen tussen jaren, leuk voor de belanghebbers :P
    - Gebruiker, geprint(wanneer).

    Ik zal zeggen, gebruik ervan wat men eventueel nodig heeft, als dank.
    Zit wel maatwerk om het report heen, omdat het hierbij gaat om levensmiddelen.

    ps. Ben nog steeds bezig met de report en de site komt over een half jaartje wel, als ik een portfolio heb.
    Remco de Jong
    Bachelor of Business Administration and Information Technology
    minor Application Development


    " Don't use comma (,) use dot (.) "
  • Marije_BrummelMarije_Brummel Member, Moderators Design Patterns Posts: 4,262
    Gelukkig voor het weekend klaar! :D Gefeliciteerd.
Sign In or Register to comment.