JavaScript - probema eventos javascript

 
Vista:

probema eventos javascript

Publicado por marta003 (1 intervención) el 12/05/2016 15:35:07
Buenas tardes a todos,

Tengo una pantalla en la que tengo que escribir el nombre, el apellido y la fecha de nacimiento. Cuando los tres han sido escritos se comprueba en la base de datos si la persona existe o no y si es el caso aparece un mensaje de error. si el evento onchange lo pongo en el cuadrado de la fecha de nacimiento funciona perfectamente. Pero si pongo 3 eventos distintos (3 onchange, para que aunque no se respecte el orden de escritura el error aparezca) no extrae bien los datos y el evento no funcion. Alguien podria decirme como corregir esto o alguna otra manera de hacerlo?

el codigo es el siguient:
-----Nombre-----
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
var sSQL = "";
var oEx = hrCreateExtractor();
var oElem = hrEvent.htmlElement;
var NOM = hrGetElementText(oElem);
 
var Prenom = hrGetValue( "ZY06PRENOM" );
var sNaissance = hrGetValue( "ZY10DATNAI" );
 
 
var d1=sNaissance.substr(6,2);
var d2=sNaissance.substr(3,2);
var d3=sNaissance.substr(0,2);
var d4=d1 + "-" + d2 + "-" + d3 ;
var d5=d3 + "-" + d2 + "-" + d1 ;
 
 
//window.alert("NOM " + NOM);
//window.alert("Prenom " + Prenom);
//window.alert(d4);
 
if (NOM != "" && Prenom != "" && sNaissance !="")
{
 
oEx.maxRow = 25;
sSQL += "select matcle, DATNAI, prenom, nomuse ";
sSQL += "from ZY00 j, ZY10 k ";
sSQL += "WHERE j.NUDOSS=k.NUDOSS ";
sSQL += "and upper(trim(j.nomuse)) = upper(trim('_XXX_')) AND upper(trim(j.prenom)) = upper(trim('_YYY_'))  AND to_char(DATNAI,'YY-MM-DD') =('_AA_')";
sSQL = sSQL.replace( new RegExp("_XXX_","g"), NOM);
sSQL = sSQL.replace( new RegExp("_YYY_","g"), Prenom);
sSQL = sSQL.replace( new RegExp("_AA_","g"), d4);
 
 
window.alert("sSQL " + sSQL);
 
oEx.sqlOrder = sSQL;
oEx.extract();
 
//window.alert("count * " + oEx.rowCount);
 
for (var i = 0 ; i < oEx.rowCount ; i++ ) {
 
window.alert("ATTENTION, création impossible : " + oEx.getValue(i,3) + " " + oEx.getValue(i,2) +" né(e) le " + d5 + " de matricule " +oEx.getValue(i,0) + " est détecté en doublon de dossier. ");
 
}
hrEvent.defaultAction();
}




----apellido-----
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
var sSQL = "";
var oEx = hrCreateExtractor();
var oElem = hrEvent.htmlElement;
var PRENOM = hrGetElementText(oElem);
 
var Nom = hrGetValue( "ZY07NOMUSE" );
var sNaissance = hrGetValue( "ZY10DATNAI" );
 
 
var d1=sNaissance.substr(6,2);
var d2=sNaissance.substr(3,2);
var d3=sNaissance.substr(0,2);
var d4=d1 + "-" + d2 + "-" + d3 ;
var d5=d3 + "-" + d2 + "-" + d1 ;
 
 
if (Nom != "" && PRENOM != "" && sNaissance !="")
{
 
oEx.maxRow = 25;
sSQL += "select matcle, DATNAI, prenom, nomuse ";
sSQL += "from ZY00 j, ZY10 k ";
sSQL += "WHERE j.NUDOSS=k.NUDOSS ";
sSQL += "and upper(trim(j.nomuse)) = upper(trim('_XXX_')) AND upper(trim(j.prenom)) = upper(trim('_YYY_'))  AND to_char(DATNAI,'YY-MM-DD') =('_AA_')";
sSQL = sSQL.replace( new RegExp("_XXX_","g"), Nom);
sSQL = sSQL.replace( new RegExp("_YYY_","g"), PRENOM);
sSQL = sSQL.replace( new RegExp("_AA_","g"), d4);
 
 
oEx.sqlOrder = sSQL;
oEx.extract();
 
window.alert("count * " + oEx.rowCount);
 
for (var i = 0 ; i < oEx.rowCount ; i++ ) {
 
window.alert("ATTENTION, création impossible : " + oEx.getValue(i,3) + " " + oEx.getValue(i,2) +" né(e) le " + d5 + " de matricule " +oEx.getValue(i,0) + " est détecté en doublon de dossier. ");
 
}
 
hrEvent.defaultAction();
}



----fecha nacimiento----
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
var sSQL = "";
var oEx = hrCreateExtractor();
var oElem = hrEvent.htmlElement;
var SNaissance = hrGetElementText(oElem);
 
var d1=SNaissance.substr(6,2);
var d2=SNaissance.substr(3,2);
var d3=SNaissance.substr(0,2);
var d4=d1 + "-" + d2 + "-" + d3 ;
var d5=d3 + "-" + d2 + "-" + d1 ;
 
 
var Nom = hrGetValue( "ZY07NOMUSE" );
var Prenom = hrGetValue( "ZY06PRENOM" );
 
 
 
//window.alert("NOM " + Nom);
//window.alert("Prenom " + Prenom);
//window.alert(d4);
 
if (Nom != "" && Prenom != "" && SNaissance !="")
{
 
oEx.maxRow = 25;
sSQL += "select matcle, DATNAI, prenom, nomuse ";
sSQL += "from ZY00 j, ZY10 k ";
sSQL += "WHERE j.NUDOSS=k.NUDOSS ";
sSQL += "and upper(trim(j.nomuse)) = upper(trim('_XXX_')) AND upper(trim(j.prenom)) = upper(trim('_YYY_'))  AND to_char(DATNAI,'YY-MM-DD') =('_AA_')";
sSQL = sSQL.replace( new RegExp("_XXX_","g"), Nom);
sSQL = sSQL.replace( new RegExp("_YYY_","g"), Prenom);
sSQL = sSQL.replace( new RegExp("_AA_","g"), d4);
oEx.sqlOrder = sSQL;
oEx.extract();
 
 
window.alert("count * " + oEx.rowCount);
 
for (var i = 0 ; i < oEx.rowCount ; i++ ) {
 
window.alert("ATTENTION, création impossible : " + oEx.getValue(i,3) + " " + oEx.getValue(i,2) +" né(e) le " + d5 + " de matricule " +oEx.getValue(i,0) + " est détecté en doublon de dossier. ");
 
}
hrEvent.defaultAction();
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder