KundenAuswertungStatistik.p 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. DEF VAR ii AS INT NO-UNDO.
  2. DEF BUFFER bArtbw FOR Artbw.
  3. DEF TEMP-TABLE tStatistik
  4. FIELD iKnr AS INT
  5. FIELD cAnschrift AS CHAR EXTENT 12
  6. FIELD cMail AS CHAR
  7. FIELD cSprache AS CHAR
  8. FIELD nUmsatz AS DEC EXTENT 10
  9. FIELD nTotal AS DEC
  10. FIELD dLetztVerkauf AS DATE
  11. .
  12. FOR EACH Debst NO-LOCK
  13. WHERE Debst.Firma = '1000'
  14. AND Debst.Aktiv,
  15. FIRST Adresse NO-LOCK
  16. WHERE Adresse.Firma = Debst.Firma
  17. AND Adresse.Knr = Debst.Knr
  18. AND Adresse.Aktiv,
  19. FIRST Artbw NO-LOCK USE-INDEX Artbw-k3
  20. WHERE Artbw.Firma = Debst.Firma
  21. AND Artbw.Knr = Debst.Knr
  22. AND Artbw.Datum <> ?
  23. AND Artbw.Datum >= 01/01/2017
  24. AND Artbw.Tr_Art = 1:
  25. CREATE tStatistik.
  26. ASSIGN tStatistik.iKnr = Debst.Knr
  27. tStatistik.cAnschrift = Adresse.Anschrift
  28. tStatistik.cMail = Adresse.Mail
  29. tStatistik.dLetztVerkauf = Artbw.Datum.
  30. CASE Adresse.Sprcd:
  31. WHEN 1 THEN tStatistik.cSprache = 'Deutsch'.
  32. WHEN 2 THEN tStatistik.cSprache = 'Italienisch'.
  33. WHEN 3 THEN tStatistik.cSprache = 'Französisch'.
  34. WHEN 4 THEN tStatistik.cSprache = 'Englisch'.
  35. END CASE.
  36. FOR EACH bArtbw NO-LOCK USE-INDEX Artbw-k3
  37. WHERE bArtbw.Firma = Debst.Firma
  38. AND bArtbw.Knr = Debst.Knr
  39. AND bArtbw.Datum <> ?
  40. AND bArtbw.Datum >= 01/01/2017
  41. AND bArtbw.Tr_Art = 1:
  42. ii = YEAR(TODAY) - YEAR(bArtbw.Datum) + 1.
  43. IF ii < 1 THEN ii = 1.
  44. ASSIGN tStatistik.nUmsatz[ii] = tStatistik.nUmsatz[ii] + bArtbw.Net_Betr
  45. tStatistik.nTotal = tStatistik.nTotal + bArtbw.Net_Betr.
  46. IF bArtbw.Datum > tStatistik.dLetztVerkauf THEN tStatistik.dLetztVerkauf = bArtbw.Datum.
  47. END.
  48. END.
  49. OUTPUT TO 'C:\TEMP\KundenAuswertung.csv' NO-MAP NO-CONVERT.
  50. FOR EACH tStatistik:
  51. EXPORT DELIMITER ';'
  52. tStatistik.iKnr
  53. tStatistik.cAnschrift[05]
  54. tStatistik.cAnschrift[06]
  55. tStatistik.cAnschrift[07]
  56. tStatistik.cAnschrift[08]
  57. tStatistik.cAnschrift[09]
  58. tStatistik.cAnschrift[10]
  59. tStatistik.cAnschrift[11]
  60. tStatistik.cMail
  61. tStatistik.cSprache
  62. tStatistik.nUmsatz[01]
  63. tStatistik.nUmsatz[02]
  64. tStatistik.nUmsatz[03]
  65. tStatistik.nUmsatz[04]
  66. tStatistik.nUmsatz[05]
  67. tStatistik.nUmsatz[06]
  68. tStatistik.nTotal
  69. STRING(tStatistik.dLetztVerkauf,'99.99.9999')
  70. .
  71. END.
  72. OUTPUT CLOSE.