Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Hitta "nollfakturor"

Postades av 2009-03-16 16:06:30 - Mikael Stoltz, i forum sql-server/msde, Tråden har 2 Kommentarer och lästs av 1702 personer

Hej,

Jag har fastnat på ett litet problem.

Jag ska hitta fakturor där varje konto (glaccount) var för sig summerar till 0, se Nollfaktura.
I en vanlig faktura sumerar inte kontona (glaccount) till 0 även om det kan förekomma, se Vanlig faktura.

Alla fakturor sumerar totalt på net, gross , tax till 0. Det räcker inte alltså att bara kolla om fakturarn summerar till 0 eller ej, utan att mitt problem är att jag måste kolla att alla kontonon var för sig i fakturan summerar till 0.



Nollfaktura:
voucher glaccount net gross tax
-------------------- --------- --------------------- --------------------- ---------------------
656780 146061 -750,00 -750,00 0,00
656780 146061 750,00 750,00 0,00
656780 499990 -750,00 -750,00 0,00
656780 499990 750,00 750,00 0,00


Vanlig faktura:
voucher glaccount netamount gross tax
-------------------- --------- --------------------- --------------------- ---------------------
4725848 146061 522,00 522,00 0,00
4725848 142088 -522,00 -522,00 0,00
4725848 146079 522,00 522,00 0,00
4725848 146079 -522,00 -522,00 0,00


Jag har kommit så långt att jag kan ta fram alla förekomster av konton som summerar till 0.
Men då får jag träff på varje faktura som har en så kallad motbokningsrad.

select vouchernumber, GLAccount
From FakturaTable
Where DOC_ID = 'DOC1100246'
Group by vouchernumber, GLAccount
Having sum(netamount)=0

Jag behöver alltså få träff på en faktura där alla konton summerar till 0.

Jag tacksam för något uppslag på att komma vidare.

/Mikael


Svara

Sv: Hitta "nollfakturor"

Postades av 2009-03-16 16:58:49 - Niklas Jansson

Ta det i mindre steg.

1. Vilka kombinationer faktura / konto finns det, och vilka summor har de?

SELECT voucher, glaccount, SUM(net), SUM(gross), SUM(tax) FROM Tabell
GROUP BY voucher, glaccount


2. Och vilka är noll?
SELECT voucher, glaccount, SUM(net), SUM(gross), SUM(tax) FROM Tabell
GROUP BY voucher, glaccount WHERE SUM(net) = 0 AND SUM(gross) = 0 ...

Förmodligen bör du byta ut = 0 mot ABS(SUM(net)) < eps, men det är en annan sak.

3. Du ska välja ut de som bara har noll. Det enklaste då är att först ta fram de som har såna som _inte_ är noll:
SELECT voucher, glaccount, SUM(net), SUM(gross), SUM(tax) FROM Tabell
GROUP BY voucher, glaccount WHERE SUM(net) <> 0 OR SUM(gross) <> 0 ...

4. Sen väljer du ut alla de voucherna:
X = SELECT DISTINCT voucher FROM (SELECT voucher, glaccount, SUM(net), SUM(gross), SUM(tax) FROM Tabell
GROUP BY voucher, glaccount WHERE SUM(net) <> 0 OR SUM(gross) <> 0 ...)

Och slutligen så har du alla "vanliga". För att ta fram nollfakturorna så gör du bara
SELECT Voucher FROM Tabell WHERE Voucher NOT IN (X)


Svara

Sv:Hitta "nollfakturor"

Postades av 2009-03-17 13:51:03 - Mikael Stoltz

Hej Niklas,

Tack! Det löste problemet perfekt.
Du har skrivit väldigt bra och tydliga instruktioner. Det är ju mycket bättre att få tänket förklarat än bara få lösningen serverad på ett fat. Nu har jag fått en struktur på hur jag ska lösa flera andra liknande problem som jag har.

Hälsningar,
Mikael


Svara

Nyligen

  • 21:21 1xBet Promo Code 2025
  • 18:37 Remove the bumper in AUDI
  • 15:35 Chicken road crash game
  • 21:41 Automotive Services UK
  • 20:44 Erfarenhet av CBD-olja mot sömnpro
  • 12:13 Sex Dolls for Sale
  • 19:42 Online Casinos for Haitian Players
  • 19:38 Rekommendera något intressant

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 903
27 965
271 779
2 350
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies