AGREGAR DATOS EN UNA NUEVA TABLA

Inicio Foros Foro principal Desarrolladores AGREGAR DATOS EN UNA NUEVA TABLA

Viendo 6 entradas - de la 1 a la 6 (de un total de 6)
  • Autor
    Entradas
  • #31691
    diana giraldo
    Miembro

    HOLA

    Despues de crear una tabla en postgres y luego importarla a libertya, tengo un problema al intentar ingresar datos…

    me explico:
    1. creo la tabla en postgres c_bp_tipo_doc
    2. creo la tabla, ventana en libertya(importo la tabla y los campos)
    3. la pongo en el menu para que sea visible
    4. le doy permisos al administrador para que la pueda ver
    5. verifico que pueda ingresar datos en la venta (y hasta ahy todo perfecto)
    6. creo una nueva columna en la tabla cb_partner (que se refiere a la tabla anteriormente creada)c_bp_tipo_doc_id
    7. en la ventana business partner agrego el campo. y hay es donde ocurre el problema no me deja ingresar datos desde hay, la casilla sale como si estubiera deshabilidao y no me da opcion de escoger ningun tipo de dato y tampoco de escribirlo

    es super urgente
    gracias

    #35479
    Javier Ader
    Participante

    Deshabilitada te aparece? Como si estuviese solo lectura?

    No habras creado la c_bpartner.c_bp_tipo_doc_id como coomo columna calculada no?
    Para que sea un columna normal lo que tendrias que haber hecho con respecto a C_BPartner es:
    -esto en Postrgres: agregar un columna, clave foranea c_bp_tipo_doc_id en C_BParnter de tipo int apuntando a c_bp_tipo_doc.c_bp_tipo_doc_id; que permita null (si no queres que permita null, tenes que agregarle un valor inicial…)
    -desde Libertya agregar esta columna a la tabla C_BParnter, de tipo “table” o “table dir” (o search, alguna de esas).
    -asegurarte que en la definición de columna de libertya para C_BPartner.c_bp_tipo_doc_id tenga “sql” (la que esta arriba a la derecha) vacia; esto es lo debería pasar salvo por alguna razón le hayas puesto algún valor a este campo, ya que por defecto queda vacio.

    El tema del “Sql” es que Libertya lo utiliza para detectar que columnas son calculadas (esto es, columnas que no están realmente en el tabla a nivel de Postgres); si tiene algún valor entonces es calculada y no te la deja editar.

    #35483
    diana giraldo
    Miembro

    Gracias por tu respuesta… pero te cuento que no funciono….mira exactamente lo que hice fue lo siguiente:

    1. en postgres cree la siguiente tabla: c_bp_tipo_doc
    con las siguientes columnas:
    c_bp_tipo_doc_id integer NOT NULL,
    ad_client_id integer NOT NULL,
    ad_org_id integer NOT NULL,
    isactive character(1) NOT NULL DEFAULT ‘Y’::bpchar,
    created timestamp without time zone NOT NULL DEFAULT (‘now’::text)::timestamp(6) with time zone,
    createdby integer NOT NULL,
    updated timestamp without time zone NOT NULL DEFAULT (‘now’::text)::timestamp(6) with time zone,
    updatedby integer NOT NULL,
    name caracter variying(40) NOT NULL
    CONSTRAINT c_bp_tipo_doc_key PRIMARY KEY (c_bp_tipo_doc_id)

    2. en la tabla C_bpartner creo la columna c_bp_tipo_doc_id integer y la siguiente llave foranea

    CONSTRAINT cbp_tipo_cbpartner FOREING KEY (c_bp_tipo_doc_id) REFERENCES openxp.c_bp_tipo_doc (c_bp_tipo_doc_id) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION

    3. CREO LA TABLA EN LIBERTYA -> IMPORTO LA TABLA -> AJUSTO LOS VALORES CORRECTOS
    4. CREO LA TABLA VENTANA, PESTAÑA Y CAMPO (IMPORTANDO LOS CAMPOS DESDE PGADMIN)
    5. AGREGO LA PESTAÑA AL MENU
    6. CHECK A LA SECUENCIA
    7. OTORGO PERMISOS A LA VENTANA

    HASTA AHY EN LA TABLA BIEN, GUARDA LOS CAMBIOS Y TENGO ACCESO ALOS REGISTROS… LUEGO NECESITO PEGAR ESA TABLA A ENTIDADES COMERCIALES; HAGO LO SIGUIENTE
    1. EN TABLA VENTANA-> IMPORTO LA COLUMNA DE C_BP_TIPO_DOC_ID Y LA PONGO DE TIPO TABLEDIR, -> CREO EL CAMPO; PERO ESTE APARECE COMO SI FUERA DE SOLO LECTURA
    PARA MAYOR CLARIDAD REVISAR LA IMAGEN ADJUNTADA

    GRACIAS
    ES DE VITAL IMPORTANCIA

    #35480
    Javier Ader
    Participante

    no veo la imagen adjunta….
    Igual, veo algo raro:

    Code:
    CONSTRAINT cbp_tipo_cbpartner FOREING KEY (c_bp_tipo_doc_id) REFERENCES openxp.c_bp_tipo_doc (c_bp_tipo_doc_id) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION

    Estas segura que esa referencia se creo? porque el “openxp” es muy dudoso (salvo que estes usando OpenXpertya); te debería haber tirado un error y no te creo la ref. foranea o peor, no te creo la columna. Debería ser REFERENCES libertya.c_bp_tipo_doc (c_bp_tipo_doc_id).

    Más allá de esto; en la definición de la columna de C_BPartner.c_bp_tipo_doc_id necesariamente tenes que permitirle (al menos al principio) que tenga valor nulo; si la referencia no se va a crear. Despues a nivel de tabla-libertya, proba cambiando si permite o no valor nulo (seguramente, vos necesitas que NO permita valor nulo… el tema es que la entidades comerciales previas van a tener null en estas columnas).

    #35518
    diana giraldo
    Miembro

    si tienes el razon esa no es la referencia; lo que pasa es que estaba mirando el otro software tambien…
    con respecto a lo que me dices si creo en postgres la columna c_bp_tipo_doc_id en C_BPartner de valor NOT NULL, no me deja crear dice contiene valores nulos… si es a eso que te refieres…. igual si cambio en libertya en la tabla por NOT NULL, no cambia de situacion…

    intentare volver a subir la imagen

    GRACIAS
    [img size=938]https://www.libertya.org/media/kunena/attachments/legacy/images/Barrio.JPG[/img]

    #35481
    Javier Ader
    Participante

    Disculpa la tardanza; al final me olvide…
    El tema tal vez venga le estas errando de pestaña; la pestaña Cliente es distinta a la de Entidad Comercial, aunque se basen en la misma tabla. Probablemente no le haya puesto de tipo tableDir para la pestaña Cliente.

Viendo 6 entradas - de la 1 a la 6 (de un total de 6)
  • Debes estar registrado para responder a este debate.