1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. Anuncie Aqui
    Anuncie aqui você Também: fdantas@4each.com.br

[RESOLVIDO] UPC PD4000 não funciona quando outra sessão é aberta

Discussão em 'EMS , HCM e Totvs 11' iniciado por lenebosco, Julho 7, 2014.

Status do Tópico:
Não esta aberto para novas mensagens.
  1. lenebosco

    lenebosco Sem Pontuação

    Bom dia,
    Gostaria de uma ajudinha !
    Tenho uma upc no programa pd40000 para inserir algumas informações no campo condições de redespacho ao inserir uma transportadora de redespacho .
    Porém, se outra sessão do PD4000 for aberta a upc não funciona.
    Acredito, que ao abrir outra sessão a upc não consiga capturar os objetos para realizar as devidas alterações

    /*******************************************************************************
    * UPPD4000.P
    ******************************************************************************/
    def input param p-ind-event as char no-undo.
    def input param p-ind-object as char no-undo.
    def input param p-wgh-object as handle no-undo.
    def input param p-wgh-frame as widget-handle no-undo.
    def input param p-cod-table as char no-undo.
    def input param p-row-table as rowid no-undo.

    def var c-objeto as char no-undo.

    DEF VAR wh-object AS WIDGET-HANDLE NO-UNDO.
    DEF VAR wh-son AS WIDGET-HANDLE NO-UNDO.
    DEF VAR wh-frame3 AS WIDGET-HANDLE NO-UNDO.
    DEF VAR wh-frame10 AS WIDGET-HANDLE NO-UNDO.
    DEF VAR wh-frame6 AS WIDGET-HANDLE NO-UNDO.

    DEF NEW GLOBAL SHARED VAR wh-fill AS WIDGET-HANDLE NO-UNDO.
    DEF NEW GLOBAL SHARED VAR tx-label AS WIDGET-HANDLE NO-UNDO.
    DEF NEW GLOBAL SHARED VAR l-criado AS LOGICAL NO-UNDO.
    DEF NEW GLOBAL SHARED VAR wh-btcancelitem-1 AS WIDGET-HANDLE NO-UNDO.
    DEF NEW GLOBAL SHARED VAR wh-cancelbutton AS WIDGET-HANDLE NO-UNDO.
    DEF NEW GLOBAL SHARED VAR wh-btadditem-1 AS WIDGET-HANDLE NO-UNDO.
    DEF NEW GLOBAL SHARED VAR wh-addbutton AS WIDGET-HANDLE NO-UNDO.
    DEF NEW GLOBAL SHARED VAR wh-fi-item AS WIDGET-HANDLE NO-UNDO.
    DEF NEW GLOBAL SHARED VAR wh-fi-referencia AS WIDGET-HANDLE NO-UNDO.
    DEF NEW GLOBAL SHARED VAR wh-fi-valor AS WIDGET-HANDLE NO-UNDO.
    DEF NEW GLOBAL SHARED VAR wh-fi-desc AS WIDGET-HANDLE NO-UNDO.
    DEF NEW GLOBAL SHARED VAR wh-fi-trred AS WIDGET-HANDLE NO-UNDO.
    DEF NEW GLOBAL SHARED VAR wh-fi-condred AS WIDGET-HANDLE NO-UNDO.
    DEF NEW GLOBAL SHARED VAR r-pedido-venda AS ROWID NO-UNDO.
    DEF NEW GLOBAL SHARED VAR r-item-pedido AS ROWID NO-UNDO.

    assign c-objeto = entry(num-entries(p-wgh-object:private-data, "~/"), p-wgh-object:private-data, "~/").

    IF p-cod-table = "ped-venda" AND
    p-row-table <> ? THEN
    ASSIGN r-pedido-venda = p-row-table.

    IF p-cod-table = "ped-item" AND
    p-row-table <> ? THEN
    ASSIGN r-item-pedido = p-row-table.

    IF p-ind-event = "AFTER-INITIALIZE" THEN DO:
    ASSIGN wh-object = p-wgh-frame:FIRST-CHILD.
    ASSIGN wh-object = wh-object:FIRST-CHILD.

    DO WHILE wh-object <> ?:

    IF wh-object:NAME = "fpage10" THEN DO:
    ASSIGN wh-frame10 = wh-object.

    ASSIGN wh-son = wh-object:FIRST-CHILD.
    ASSIGN wh-son = wh-son:FIRST-CHILD.

    DO WHILE VALID-HANDLE(wh-son):

    if wh-son:name = "cond-redespa" THEN
    ASSIGN wh-fi-condred = wh-son.

    ASSIGN wh-son = wh-son:NEXT-SIBLING.

    END.
    END.


    IF wh-object:NAME = "fpage3" THEN DO:
    ASSIGN wh-frame3 = wh-object.

    ASSIGN wh-son = wh-object:FIRST-CHILD.
    ASSIGN wh-son = wh-son:FIRST-CHILD.

    DO WHILE VALID-HANDLE(wh-son):

    if wh-son:name = "nome-tr-red" THEN DO:
    ASSIGN wh-fi-trred = wh-son.

    ON 'RETURN':U, 'LEAVE':U OF wh-fi-trred
    PERSISTENT RUN upc/uppd4000c.p.
    END.

    ASSIGN wh-son = wh-son:NEXT-SIBLING.

    END.
    END.
    END.


    /************************* uppd4000c******************* /

    DEF NEW GLOBAL SHARED VAR wh-fi-trred AS WIDGET-HANDLE NO-UNDO.
    DEF NEW GLOBAL SHARED VAR wh-btconf AS WIDGET-HANDLE NO-UNDO.
    DEF NEW GLOBAL SHARED VAR wh-fi-condred AS WIDGET-HANDLE NO-UNDO.

    IF wh-fi-trred:SCREEN-VALUE <> "" THEN DO:

    FIND transporte WHERE transporte.nome-abrev = wh-fi-trred:SCREEN-VALUE
    OR transporte.cod-transp = INTEGER(wh-fi-trred:SCREEN-VALUE) NO-ERROR .
    ASSIGN wh-fi-trred:SCREEN-VALUE = transporte.nome-abrev .
    ASSIGN wh-fi-condred:SCREEN-VALUE = "Frete: FOB " + " End: " + transporte.endereco + " Bairro: " +
    transporte.bairro + " CEP: " + transporte.cep + " Cidade: " + transporte.cidade + " Estado: " + transporte.estado .
    END.
    ELSE DO:
    UPDATE wh-fi-condred:SCREEN-VALUE = "" .
    END.
    /******************************************************************************************/
  2. elmo

    elmo Membro Ativo

    Bom dia,
    O problema pode está nas variaveis globais compartilhadas, eu vi aqui no forum o pessoal tratando desse assunto.
    Vou pesquisar se encontrar coloco aqui.
    Última edição: Julho 8, 2014
  3. elmo

    elmo Membro Ativo

  4. lenebosco

    lenebosco Sem Pontuação

    Bom dia Elmo, muito obrigada,
    Resolvido ....

    Tirei a variável global e passei como parâmetro .

    Exemplo:
    /********************* upc pd4000 **********************/

    DEF VAR wh-fi-trred AS WIDGET-HANDLE NO-UNDO .
    DEF VAR wh-fi-condred AS WIDGET-HANDLE NO-UNDO.

    PERSISTENT RUN upc/uppd4000c.p (INPUT wh-fi-trred, wh-fi-condred ) .

    /******************** upc pd4000c *********************/

    DEF INPUT PARAM wh-fi-trred AS WIDGET-HANDLE.
    DEF INPUT PARAM wh-fi-condred AS WIDGET-HANDLE.
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página