1. EN_VALIDACIO_XML
1.1. Recupero les peticions en aquest estat
1.2. Valido les dades XML
1.2.1. Avanço la petició a EN_REVISIO_MANUAL
1.2.2. Passo la petició a ERROR_N2_IMPORTACIO_SIGNE i poso enError = true i el motiu de l'error.
2. EN_RECUPERACIO_XML_DADES
2.1. Aquí no valido les dades!
2.2. Recupero totes les peticions d'aquest estat i que no han superat el màxim de reintents
2.3. Crido al WS per recuperar les dades
2.4. Avanço la petició a l'estat EN_VALIDACIO_XML i insereixo les dades XML
2.5. Si hi ha error augmento el número de reintents i espeifico motiu.
3. PENDENT_SINCRO_SIGNE
3.1. El neu NO existeix a la pissarraPeticio
3.2. NEU existeix OPERACIÓ = TÍTOL = [en_error = TRUE estat = AVORTADA]
3.3. El neu EXISTEIX a la pissarraPeticio en_error = false OJO! Crec que les avortades no s'han d'acceptar ja que no sempre és per error d'una mala importació a Signe
3.4. Recupero peticions en estat PENDENT_SINCRO_SIGNE
3.5. Consulto la petició a la pissarra
3.5.1. Si existeix
3.5.1.1. No està en un d'aquests estats: AVORTADA, ERROR_N1 o ERROR_N2
3.5.1.1.1. La poso en AVORTADA
3.5.1.2. Està en un d'aquests estats: AVORTADA, ERROR_N1 o ERROR_N2
3.5.1.2.1. Si té id_registre_signe
3.5.2. Si no existeix
3.5.2.1. L'accepto i la poso EN_RECUPERACIO_XML_DADES
3.5.2.1.1. Què passa si l'operació és duplicat o modificació? No l'accepto, no?
4. PENDENT_IMPORTACIO_SIGNE
4.1. TITOL
4.1.1. Si s'ha registrat bé al WS guardo el NRU i el secRegistro
4.1.2. Si ERROR servei = 995 (no compleix XSD) la poso en ERROR_N2 i secRegistre (id_registre_signe) = null.
4.1.3. Si ERROR servei = 998 (registre ja existeix o té errors) el poso en ERROR_N2 i poso secRegistre (si l'error és que ja existeix a BDD el secRegistre és null)
4.1.4. Si retorna error amb secRegistro, el guardem a bbdd, actualitzem estat a ERROR_N2 i el sistema hauria de permetre una nova petició igual a la anterior i ser "intel·ligent" per recuperar el secRegistro en aquell moment. En quant avanci de nou el flux, a l'estat PENDENT_IMPORTACIO_SIGNE com hi ha secRegistro --> crida operació ModificarPeticio.
4.1.5. Si retorna error sense secRegistro. Idem cas anterior i com no te el secRegistro --> crida operació AltaPeticio de nou
4.2. SET
4.2.1. Si s'ha pujat bé a l'extranet estat = PENDENT_SET
4.2.2. Si no s'ha pujat bé estat = ERROR_N2 en_error = true i motiu = codi retorn servei
5. INICIAR PETICIÓ (WS / FORM)
5.1. SET
5.1.1. sp_iniciar_sets
5.1.1.1. Si el lot ja existeix NO s'accepta
5.1.1.2. Si NO existeix una petició anterior NO s'accepta
5.2. TÍTOLS
5.2.1. sp_iniciar_titol
5.2.1.1. Es recupera el secRegistro si la petició existeix a la base de dades i NO està en curs
5.2.1.2. Si és un ALTA i l'última operació a base de dades és DUPLICAT o CORRECCIÓ no s'admet
5.2.1.3. Si l'últim estat és ESBORRANY actualitzo la petició ja que teòricament es fa referència a ella.