Scusami ...forse ho capito male... Hai bisogno di un campo calcolato che trasformi (relativamente a marzo 2017):
201704 in P01?
201705 in P02?
.....
201715 in P12 (dodici mesi)?
Oppure il max é 201803 da far corrispondere comunque a P12?
Hai dei campi in cui scrivi il mese corrente, l'anno.. oppure la data (e se si che valori assumono?) oppure va calcolato e ricalcolato in base alla data reale?..
Le domande sopra sono finalizzate a capire come deve essere fatto il calcolo..
tanto per provare a "lanciarmi" nel buio prova questo come campo calcolato da aggiungere alla query che è all'origine della query a campi incrociati:
IntColCustom: "P" & IIf((IIf(CInt(Mid([MONTH_LABEL_YYYYMM];1;4))=Year(Date());CInt(Mid([MONTH_LABEL_YYYYMM];5;2))-Month(Date());12-Month(Date())+CInt(Mid([MONTH_LABEL_YYYYMM];5,2))))<10;"0" & CStr(IIf(CInt(Mid([MONTH_LABEL_YYYYMM];1;4))=Year(Date());CInt(Mid([MONTH_LABEL_YYYYMM];5;2))-Month(Date());12-Month(Date())+CInt(Mid([MONTH_LABEL_YYYYMM];5,2))));CStr(IIf(CInt(Mid([MONTH_LABEL_YYYYMM];1;4))=Year(Date());CInt(Mid([MONTH_LABEL_YYYYMM];5;2))-Month(Date());12-Month(Date())+CInt(Mid([MONTH_LABEL_YYYYMM];5,2)))))
NB:
Year(Date()) corrisponde all'anno corrente ovvero a 2017
Month(Date()) corrisponde al mese corrente ovvero a 3
quindi se per esempio il mese corrente e l'anno corrente variano in base alla selezione di una combobox non devi fare altro che sostituire solo la relativa parte di codice relativa al mese e anno corrente con il riferimento nella maschera... solitamente non mi applico nel codice... ma questa mi intrigava un po...