Personal as modifica putin arhitectura, as muta Moneda si Curs in [IESIRI] sau chiar intr-un catalog separat iar default in [IESIRI] as pune RON. La TVA as face la fel, catalog (eventual cu perioada de valabilitate) si default pe 19. In Chitante as scoate MONEDA pt ca iesirea are deja moneda, cursul te intereseaza pt a calcula diferentele de curs. Ce mai trebuie sa tii cont este si faptul ca facturarea pentru Romania presupune si facturarea TVA iar pt vanzari intracomunitare nu trebuie sa colectezi TVA dar trebuie sa-l platesti. La aceste lucruri Razvan se pricepe cel mai bine.
Cu toate acestea, uite un select care ar trebui sa-ti aduca info dorite:
DECLARE
@ID_SOCIETATE INT --daca nu initializezi aceasta variabila, vei vedea lista iesirilor pentru care ai incasari mai mici sau mai mari decat valoarea lor
SELECT
i.ID_SOCIETATE, i.NUMAR, i.SERIE, i.DATA, SUM(id.Baza) AS BAZA, SUM(id.[BAZA_RON]) AS [BAZA_RON], SUM(id.[VAL_TVA]) as [VAL_TVA], SUM(id.[VAL_TVA_RON]) AS [VAL_TVA_RON], c.CURS AS CursChitanta, c.DATA AS DataChitanta, c.MONEDA AS MonedaChitanta, c.NUMAR AS NumarChitanta, SUM(c.VALOARE) AS ValoareAchitata
FROM IESIRI i
INNER JOIN [IESIRI_DETAIL] id ON i.ID = id.ID_IESIRE
LEFT JOIN [CHITANTE] c ON i.ID = c.ID_IESIRE
WHERE i.ID_SOCIETATE = ISNULL(@ID_SOCIETATE, i.ID_SOCIETATE)
GROUP BY i.ID_SOCIETATE, i.NUMAR, i.SERIE, i.DATA, c.CURS, c.DATA, c.MONEDA, c.NUMAR
HAVING SUM(id.[BAZA_RON]) <> ISNULL(SUM(c.VALOARE),0)Sper sa te fi ajutat cat de cat, dar repet, eu as modifica putin arhitectura.
Cătălin D.