19/12/2023 - Philcattivocarattere ha scritto:
19/12/2023 - Snupix ha scritto:
per le funzioni IIF non mantenga la formattazione desiderata. Mi sembra mantenga la formattazione in corrispondenza della virgola per campo/colonna.
Non ho capito. Penso siano due cose diverse, giusto? Puoi farmi un esempio di cosa gli hai dato in pasto, come l'ha formattato e invece di come ti aspettavi che fosse? Magari è sufficiente aggiustare qualche impostazione.
Sia chiaro che non ho la pretesa che funzioni come voglio, comunque
il tool mi propone
SELECT C.Anno
,C.TipoPeriodo
,C.ID_Socio
,C.ID_GruppoEdifici
,C.ID_GruppoScale
,C.ID_Edificio
,C.ID_Alloggio
,MOSC.MMOcc
,MOSP.MMOcc AS MMOccSP
,IIf(C.TipoPeriodo = "1S", IIf(IsNull(RSC.CanoneAlloggio), Round((Nz(ICA.CanoneAlloggio, 0) / 12) * MOSC.MMOcc, 2), Round((RSC.CanoneAlloggio / MOSP.MMOcc) * (1 + Nz(C.PercentualeISTAT, 0) / 100) * MOSC.MMOcc, 2)), IIf(IsNull(RSC.CanoneAlloggio), Round((Nz(ICA.CanoneAlloggio, 0) / 12) * MOSC.MMOcc, 2), Round((RSC.CanoneAlloggio / MOSP.MMOcc) * MOSC.MMOcc, 2))) AS CanoneAlloggio
ma per facilitare la lettura, sarebbe comodo poter evidenziare meglio la parte degli in questo modo
SELECT C.Anno
,C.TipoPeriodo
,C.ID_Socio
,C.ID_GruppoEdifici
,C.ID_GruppoScale
,C.ID_Edificio
,C.ID_Alloggio
,MOSC.MMOcc
,MOSP.MMOcc AS MMOccSP
,IIf(C.TipoPeriodo = "1S"
, IIf(IsNull(RSC.CanoneAlloggio)
, Round((Nz(ICA.CanoneAlloggio, 0) / 12) * MOSC.MMOcc, 2)
, Round((RSC.CanoneAlloggio / MOSP.MMOcc) * (1 + Nz(C.PercentualeISTAT, 0) / 100) * MOSC.MMOcc, 2))
, IIf(IsNull(RSC.CanoneAlloggio)
, Round((Nz(ICA.CanoneAlloggio, 0) / 12) * MOSC.MMOcc, 2)
, Round((RSC.CanoneAlloggio / MOSP.MMOcc) * MOSC.MMOcc, 2))) AS CanoneAlloggio