|
#1
|
|||
|
|||
Categoría ampliación de estructura
Buenos días,
A ver si alguien me puede ayudar.. (en lenguaje de estar por casa porque estoy empezando).. El otro día cree una tabla de prueba en el sistema y me obligó a indicar una categoría de ampliación. Creo que otras veces no fue necesario.. pero.. ¿que significa cada categoría?.. y.. ¿por qué me obliga a entrar un tipo de categoría (sólo a veces)?.. Ampliable de cualquier manera Ampliable y de números o caracteres Ampliable y de caracteres No ampliable No clasificado Gracias a todos. Saludos. |
#2
|
|||
|
|||
No es obligatorio rellenar la categoria de ampliacion pero todas las estructuras y/o tablas deberian llevarla
Sirve para indicar lo que se le va a poder añadir a la estructura en un futuro, si campos numericos, campos de tipo caracter o ambos Esto ocurre porque en muchos programas necesitamos saber si la estructura contiene campos que no sean de caracter por la siguiente razon Tenemos la estructura llamada PRUEBA que contiene los campos campo1 type char8 campo2 type char2 campo3 type char4 La longitud total de la estructura seria 14 caracteres( 8+2+4 ) lo que expresado en memoria serian 28 Bytes (cada caracter en unicode se representa con 2 bytes) Como en unicode TODOS los caracteres ocupan lo mismo (2 Bytes) sabiendo la cantidad de memoria que ocupa la estructura sabemos rapidamente el numero de caracteres que tiene de longitud Pero los campos numericos no se comportan igual Los campos de tipo P, tales como cantidades, importes, etc se almacenan de manera distinta Por ejemplo supongamos que un campo de tipo INT2 ocupa 2 Bytes (lo que equivaldria a 1 caracter) un campo INT2 sin signo al tener una longitud de 2 bytes podria almacenar desde el 0 hasta 2 elevado a 16 (que seguramente sea un numero muy grande) por ejemplo podria almacenar el numero 34562 Con 2 bytes que seria la longitud de 1 solo caracter podemos almacenar un numero que tiene 5 cifras Si nuestra estructura tuviera un campo int2 conociendo lo que ocupa la estructura en memoria no podriamos determinar "correctamente" la longitud como lo hariamos si la estructura solo tuviera caracteres Actualmente muchas badis, programas, clases, etc son genericos y por lo tanto pueden recibir dependiendo de la situacion distintas estructuras (por ejemplo la badi de los pedidos tambien salta cuando se hace algo en la solicitud de pedido por lo que la misma badi de pedidos en unas ocasiones puede recibir una estructura referente al pedido y en otras una estructura referente a la solicitud de pedido) Estos programas genericos a veces necesitan saber si la estructura contiene campos que no sean de caracter para poder funcionar correctamente Por ejemplo Yo recibo la estructura EST1 que tiene los campos campo1 type char8 campo2 type char2 campo3 type char4 y la quiero traspasar a otra estructura EST2, si lo hiciera en tiempo de ejecucion al no tener campos de tipo numerico tan solo tendria que crear un string de 14 create data EST2 type char14... est2 = est1. Si la estructura est1 tuviera un campo de tipo p con3 decimales pues ya seria mas complicado hacer la asignacion y todo eso Bueno me ha salido un tocho enorme pero espero haber aclarado algo |
#3
|
|||
|
|||
De sobras.. BALLAN..
GRACIAS !! |
Herramientas | Buscar en Tema |
Desplegado | |
|
|