Ver la Versión Completa : Categoría ampliación de estructura
ppilargh
16/06/09, 09:18:13
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.
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
ppilargh
16/06/09, 11:03:06
De sobras.. BALLAN..
GRACIAS !!
www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web