Le iscrizioni sono riconducibili ai pagament registrati nel software di contabilità (Onda).<br><br>Teoricamente
esiste un indicazione simile in Aliandre ma non é affidabile per il
seguente motivo: Tra il 1 Nov anno N e il 1 Febbraio anno N+1 il
terminale delle schede non consente ad un neo iscritto per l'anno N+1 di
fare sheda perché non risulta iscritto nel anno N. Di conseguenza in
Aliandre vengono inserite iscrizione fasule pe l'anno N a fine di
consentire a tal neo iscritto di fare schede. Queste iscrizione fasule
non sono mai state pagate e in Onda non esistono. Ritengo quindi più
affiadbile chiedere ad Onda.<br><br>Ho scritto una query per il database
di Onda che ha come scopo di identificare a chi é stato emessa una
ricevuta fiscale per l'iscrizione l'anno N+1 ma non per l'anno N (cioé
nuovi soci) oppure il contrario (soci "in ritardo"). Ignora la
possibilità (rara) che uno abbia pagato la sua iscrizione via una nota
di accredito invece che via una effettivo pagamento (per la quale esiste
una ricevuta fiscale).<br><br>Credo che la miglior approssimazione di
quello che cerchi é il primo caso (che tra altro serve anche al CSVVA
per aggiornare li abbonamenti alla rivista "Volo a Vela"). <br><br>Il
secondo caso sarebbe un approssimazione di chi va de-iscritto dalle
mailing list, anche se il criterio che determina chi veramente non é più
socio non puo essere che euristico e statistico (cioé distinguere tra
"soci in ritardo" e "ex soci" vuol dire aspettare che non si
re-iscriva). <br>Il passaggio
da una categoria a l'altra non é gestito direttamente. Nel caso commune del passagio da allievi a
socio ordinario, esistono in Aliandre informazione più aggiornate come
la data di rilascio della licenza che questa query non contempla. Credo che dalla query sotto si possa scrivere una variante che identifica i soci che si sono re-iscritti con una causale diversa (da trainatore a non, da allievo a socio ordinario, da under 23 a ordinario etc...)<br><br>Caveat:<br>Li indirizzi mail si trovano solo in Aliandre (<span style="font-family: courier new,monospace;">acao_pro.soci_dati_generale.email</span>). Si puo risalire ad essa da Onda via un JOIN tra <span style="font-family: courier new,monospace;">acao_pro.soci_dati_generale.codice_socio_dati_generale </span>e <span style="font-family: courier new,monospace;">acao.STDAnagraficaClienti.</span><span style="font-family: courier new,monospace;">rifInterno</span>. <br>Non
mi pare che l'appartanenza al secondo periodo obbedisca ad un criterio
ben definito. (Fino al C d'Argento ? Al 300 km ? a X ore di volo ? o
qualcos'altro ?). FYI, esistono in Aliandre dei campi per le insegne
conseguite dal socio ma non so se vengono aggiornate.<br><br>François<br><br>La query che ho scritto (per il parametri <span style="font-family: courier new,monospace;">$P{anno}</span>) :<br><br><span style="font-family: courier new,monospace;">USE acao;<br><br>SELECT cli.rifInterno AS codice, ana.RagioneSociale AS socio,<br>isc.data, isc.tipo, iscP.data AS data_precedente, iscP.tipo AS tipo_precedente<br>FROM<br>( SELECT fatt.idAnagrafica AS id, fatt.DataDocumento AS data, r.CodArt AS tipo<br> FROM ATTDocTeste AS fatt<br> INNER JOIN ATTDocRighe r<br> ON fatt.IdDoc = r.IdDoc<br> AND r.CodArt in ('0001S', '0003S', '0004S', '0007S', '00G1S')<br> WHERE -- associazione anno dal 1 Nov<br> fatt.DataDocumento >= DATEADD(year, $P{anno}-1-1900, DATEADD(month, 11-1, 0))<br> AND fatt.DataDocumento < DATEADD(year, $P{anno}-1900, DATEADD(month, 11-1, 0))<br> AND fatt.tipoDocumento = 6 -- 6=ricevuta fiscale<br>) AS isc<br>FULL OUTER JOIN<br>( SELECT fatt.idAnagrafica AS id, fatt.DataDocumento AS data, r.CodArt AS tipo<br> FROM ATTDocTeste AS fatt<br> INNER JOIN ATTDocRighe r<br> ON fatt.IdDoc = r.IdDoc<br> AND r.CodArt in ('0001S', '0003S', '0004S', '0007S', '00G1S') -- socio, trainatori/FI, allievo, aggregato, <23<br> WHERE -- associazione anno precedente dal 1 Nov<br> fatt.DataDocumento >= DATEADD(year, $P{anno}-2-1900, DATEADD(month, 11-1, 0))<br> AND fatt.DataDocumento < DATEADD(year, $P{anno}-1-1900, DATEADD(month, 11-1, 0))<br> AND fatt.tipoDocumento = 6 -- 6=ricevuta fiscale<br>) AS iscP ON iscP.id = isc.id<br>INNER JOIN STDAnagraficaClienti AS cli ON (isc.id = cli.idAnagrafica OR iscP.id = cli.idAnagrafica)<br>INNER JOIN STDAnagrafiche AS ana ON (isc.id = ana.idAnagrafica OR iscP.id = ana.idAnagrafica)<br>WHERE iscP.id IS NULL OR isc.id IS NULL<br>ORDER BY isc.tipo, iscP.tipo, ana.RagioneSociale<br><br></span><br><br><br><br>>----Messaggio originale----<br>>Da: Daniele Orlandi <daniele@orlandi.com><br>>Data: 07/02/2016 16.11<br>>A: <it@lists.acao.it><br>>Ogg: [acao-it] Logica per determinare iscrizioni in corso<br>><br>><br>>Roberto, François,<br>><br>>Vorrei ripristinare gli script che allineano le iscrizioni alle mailing<br>>list e ho bisogno di sapere qual è la logica per determinare giorno per<br>>giorno chi dev'essere iscritto alle liste:<br>><br>>- Soci<br>>- Trainatori<br>>- Scuola<br>>- Secondo Periodo<br>><br>>In funzione del contenuto del database.<br>><br>>Non mi serve banalmente sapere chi ha un'iscrizione valida perché, per<br>>esempio, non è accettabile cancellare tutte le iscrizioni alla mailing<br>>list il primo gennaio.<br>><br>>Mi date una mano a dererminare le suddette policy?<br>><br>>Grazie,<br>>Ciao,<br>>_______________________________________________<br>>It mailing list<br>>It@lists.acao.it<br>>https://lists.acao.it/listinfo/it<br>><br><br><br><br><br>>----Messaggio originale----<br>>Da: Daniele Orlandi <daniele@orlandi.com><br>>Data: 07/02/2016 16.11<br>>A: <it@lists.acao.it><br>>Ogg: [acao-it] Logica per determinare iscrizioni in corso<br>><br>><br>>Roberto, François,<br>><br>>Vorrei ripristinare gli script che allineano le iscrizioni alle mailing<br>>list e ho bisogno di sapere qual è la logica per determinare giorno per<br>>giorno chi dev'essere iscritto alle liste:<br>><br>>- Soci<br>>- Trainatori<br>>- Scuola<br>>- Secondo Periodo<br>><br>>In funzione del contenuto del database.<br>><br>>Non mi serve banalmente sapere chi ha un'iscrizione valida perché, per<br>>esempio, non è accettabile cancellare tutte le iscrizioni alla mailing<br>>list il primo gennaio.<br>><br>>Mi date una mano a dererminare le suddette policy?<br>><br>>Grazie,<br>>Ciao,<br>>_______________________________________________<br>>It mailing list<br>>It@lists.acao.it<br>>https://lists.acao.it/listinfo/it<br>><br><br>