Crear Código de 6 digitos para materiales
Publicado por Franklin (19 intervenciones) el 29/09/2019 00:47:31
Hola a todos, Dios les bendiga
Acudo a ustedes en esta oportunidad para solicitarles su valiosa ayuda; Tengo un formulario modal para crear una entrada de materiales en una base de datos con php, y el mismo, dependiendo de las diferentes selecciones, consulta la bbdd y trae la letra que corresponda con la selección para ir formando el código de 6 dígitos necesarios.
He logrado crear ese código, pero de una manera estática por así decirlo, es decir, que a través javascript envío el valor del input a un archivo JS que procesa el dato, y a través de un swicth le asigno la letra necesaria según sea el caso.
A continuación muestro un fragmento del script que utilizo para ello.
Cabe destacar que las opciones del switch son datos que se encuentran en la BBDD, pero como no he encontrado la forma de consultarlos, seleccionar la letra y traerla a un input o un div, opté por hacerlo como esta en el anterior script.
Lo que deseo es saber la forma de consultar la base de datos y traer la información directamente sin necesidad del switch.
Espero entiendan mi solicitud y puedan aportarme una idea para lograr el cometido
Mil gracias, Dios les bendiga
Acudo a ustedes en esta oportunidad para solicitarles su valiosa ayuda; Tengo un formulario modal para crear una entrada de materiales en una base de datos con php, y el mismo, dependiendo de las diferentes selecciones, consulta la bbdd y trae la letra que corresponda con la selección para ir formando el código de 6 dígitos necesarios.
He logrado crear ese código, pero de una manera estática por así decirlo, es decir, que a través javascript envío el valor del input a un archivo JS que procesa el dato, y a través de un swicth le asigno la letra necesaria según sea el caso.
A continuación muestro un fragmento del script que utilizo para ello.
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
<script type="text/javascript">
function getCode() {
var co1;
var co2;
var co3;
var coda = document.getElementById('famid').value;
var code = document.getElementById('tipoid').value;
var codi = document.getElementById('schid').value;
switch (coda){
case '1' : co1='P'; break; //TUBERIA
case '2' : co1='N'; break; //NIPLE
case '3' : co1='C'; break; //CODO->WELDING FITTING
case '4' : co1='T'; break; //TEE->WELDING FITTING
case '5' : co1='A'; break; //CAPS
case '6' : co1='R'; break; //REDUCCION
case '7' : co1='F'; break; //BRIDA
case '8' : co1='C'; break; //CODO->FORGED STEEL FITTING
default : co1=''; break;
}
switch (code) {
case 'SCH STD' : co3 = 'T'; break;
case 'SCH XS' : co3 = 'F'; break;
case 'SCH XXS' : co3 = 'X'; break;
case 'SCH 5' : co3 = '5'; break;
case 'SCH 10' : co3 = '1'; break;
case 'SCH 20' : co3 = '2'; break;
case 'SCH 30' : co3 = '3'; break;
default : co3 = ''; break;
}
switch (codi) {
case 'CLASE 150' : co6 = 'X'; break;
case 'CLASE 300' : co6 = 'Z'; break;
case 'CLASE 900' : co6 = 'P'; break;
case 'CLASE 1000' : co6 = 'W'; break;
case 'CLASE 1500' : co6 = 'M'; break;
case 'CLASE 3000' : co6 = 'Y'; break;
case '600 PSI' : co6 = 'S'; break;
case '800 PSI' : co6 = 'O'; break;
case '1000 PSI' : co6 = 'D'; break;
case '1500 PSI' : co6 = 'Q'; break;
case '2000 PSI' : co6 = 'C'; break;
default : co6 = ''; break;
}
codmat=co1+co2+co3;
document.getElementById('codmat').value=codmat;
}
</script>
<div class="clearfix">
<span class="text-info font-weight-bold float-left font-italic bigger-120">Formulario de Registro de Materiales</span>
<span class="float-right font-italic">Código Material:
<!-- Aqui se muestra el codigo que se va creando -->
<input class="font-weight-bold" type="text" id="codmat" name="codmat" data-readonly >
<!-- ------------------------------------------------------------ -->
</span>
</div>
<form name="formate" id="formate" role="form" method="post" accept-charset="utf-8">
<div class="col-sm-12">
<div class="row align-items-center">
<div class="col-sm-3">
<span class="bigger-80">Tipo Material</span>
<select class="form-control form-control-sm" id="famid" name="famid" onchange="javascript:getCode();" >
<option value="">Seleccione</option>
</select>
</div>
<div class="col-sm-3">
<span class="bigger-80">Sub-Tipo Material</span>
<select class="form-control form-control-sm" id="tipoid" name="tipoid" onchange="javascript:getCode();" >
<option value="">Seleccione</option>
</select>
</div>
<div class="col-sm-3">
<span class="bigger-80">Schedule</span>
<select class="form-control form-control-sm" id="schid" name="schid" onchange="javascript:getCode();">
<option value="">Seleccione</option>
</select>
</div>
</div>
</div>
</form>
<script type="text/javascript">
$(document).ready(function(){
/*Desde aqui se inicia el llamado a los diferentes datos dependiendo del tipo de selección efectuada*/
/*llamado de la familia del material seleccionado*/
$("#mateid").change(function(){
$.get("core/controlador/getFamilia.php","mateid="+$("#mateid").val(), function(data){
$("#famid").html(data);
console.log(data);
});
});
/*llamado del tipo de familia de la familia del material seleccionado*/
$("#famid").change(function(){
$.get("core/controlador/getTipoMat.php","famid="+$("#famid").val(), function(data){
$("#tipoid").html(data);
console.log(data);
});
});
/*llamado del tipo de schedule seleccionado*/
$("#famid").change(function(){
$.get("core/controlador/getSchedule.php","famid="+$("#famid").val(), function(data){
$("#schid").html(data);
console.log(data);
});
});
});
</script>
Cabe destacar que las opciones del switch son datos que se encuentran en la BBDD, pero como no he encontrado la forma de consultarlos, seleccionar la letra y traerla a un input o un div, opté por hacerlo como esta en el anterior script.
Lo que deseo es saber la forma de consultar la base de datos y traer la información directamente sin necesidad del switch.
Espero entiendan mi solicitud y puedan aportarme una idea para lograr el cometido
Mil gracias, Dios les bendiga
- generaCodigo.rar(1,9 KB)
Valora esta pregunta


0