Exemplos mudança de cor de acordo com o status

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

florencio
Usuário Nível 1
Usuário Nível 1
Mensagens: 14
Registrado em: 09 Nov 2014 09:45
Localização: São Paulo / SP

Exemplos mudança de cor de acordo com o status

Mensagem por florencio »

Pessoal, vi poucos exemplos e com eles não consegui colocar para funcionar a seguinte funcionalidade em meu sistema.
De acordo com o status do pedido, gostaria que a linha toda do Grid ficasse com outra cor. No grid eu posso colocar o número do Status ex: 1, 2, 3 ou posso colocar Novo, Em Produção, Concluído. Os status são: 1 - Novo, 2 - em Produção, 3 - concluído
Utilizo HMG.3.0.46. Nesta versão é possível fazer isto ou é necessário atualizar? Tenho a 3.4 instalada, porém ela tem demorado muito para compilar meu sistema.
O Grid não esta com acesso direto ao banco.
Editado pela última vez por Toledo em 15 Mar 2016 22:52, em um total de 2 vezes.
Razão: O presente tópico foi movido da seção Harbour, uma vez que seu conteúdo não tem relação com os objetivos daquela seção, onde só podem constar dúvidas técnicas de programação diretamente relacionadas com o [x]Harbour.
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

HMG.3.0.46 - Exemplos mudança de cor de acordo com o status

Mensagem por Toledo »

Amigo, crie um codeblock para determinar as cores:

Código: Selecionar todos

bColor := { |Val| if(Val[1]=="1",{0,255,0},if(Val[1]=="2",{0,0,255},{128,128,128})) }
Val[1] terá o conteúdo da coluna 1 da Grid, então se o status do pedido for em outra coluna, altere o valor de Val[]. (Por exemplo: Val[2], ou Val[3],etc)
As cores são determinada por {0,255,0} (Verde), {0,0,255} (Azul) e {128,128,128} (Cinza), veja outras combinações de cores no arquivo \hmg\INCLUDE\i_color.ch.

Depois na Grid incluir:

Código: Selecionar todos

DYNAMICBACKCOLOR { bColor , bColor, bColor, bColor, bColor, bColor }
Neste comando, você deve colocar bColor correspondente ao número de colunas que existe na sua Grid, o exemplo acima é para uma Grid com 6 colunas.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
florencio
Usuário Nível 1
Usuário Nível 1
Mensagens: 14
Registrado em: 09 Nov 2014 09:45
Localização: São Paulo / SP

HMG.3.0.46 - Exemplos mudança de cor de acordo com o status

Mensagem por florencio »

Toledo, obrigado pelo apoio.
A coluna do meu grid é a 14, fiz a mudança e deu o erro anexo.

Pelo que vi esta dando o erro na hora de carregar os dados no grid, quando não coloco o codeblock não da o erro.

gerenciar_pedido_form.pedido_grid.AddItem ( {ven->ven_id,ven->ven_tel,ven->cli_nome,ven->cli_end,ven->cli_num,ven->cli_comp,ven->cli_bai,ven->ven_totv,ven->ven_dataa,ven->ven_horaa,ven->ven_horap,ven->ven_horae,ven->ven_horab, vNOMESTATUSPED } )

O Cellnavigation tem que estar .t. ou .f.? Eu testei das duas maneiras.

Abraço,

Ricardo
Anexos
erro.jpg
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

HMG.3.0.46 - Exemplos mudança de cor de acordo com o status

Mensagem por Toledo »

Amigo, poste o código de como você está montando a Grid (pedido_grid).

Qual o conteúdo de vNOMESTATUSPED? É uma variável string (caracter) ou numérica?

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
florencio
Usuário Nível 1
Usuário Nível 1
Mensagens: 14
Registrado em: 09 Nov 2014 09:45
Localização: São Paulo / SP

HMG.3.0.46 - Exemplos mudança de cor de acordo com o status

Mensagem por florencio »

Toledo. Muito obrigado pelo apoio. Estou em cima deste problema a algum tempo e não consigo solução. Segue o codigo do formulario.

O conteúdo daquela coluna é uma string (caracter). De acordo com o o status (númerico) ele carrega um status em string.

Se precisar de mais alguma coisa fique a vontade para falar. Agradeço muito a atenção dada.

Código: Selecionar todos

* HMG-IDE Form Designer Generated Code
* (c) Roberto Lopez - http://sites.google.com/site/hmgweb

DEFINE WINDOW TEMPLATE AT 105 , 74 WIDTH 1307 HEIGHT 644 VIRTUAL WIDTH Nil VIRTUAL HEIGHT Nil TITLE "Lista de Vendas por Status (Mesas, Comandas, Balcão, Delivery e Tickets)" ICON NIL MODAL CURSOR NIL ON INIT Nil ON RELEASE Nil ON INTERACTIVECLOSE Nil ON MOUSECLICK Nil ON MOUSEDRAG Nil ON MOUSEMOVE Nil ON SIZE Nil ON PAINT Nil BACKCOLOR Nil ON GOTFOCUS Nil ON LOSTFOCUS Nil ON SCROLLUP Nil ON SCROLLDOWN Nil ON SCROLLLEFT Nil ON SCROLLRIGHT Nil ON HSCROLLBOX Nil ON VSCROLLBOX Nil

    DEFINE TOOLBAR gereciarpedido_tbl BUTTONSIZE 64,35 FONT "Arial" SIZE 9 RIGHTTEXT BORDER
        BUTTON fechar_btn CAPTION "Sair" PICTURE "edit_close.bmp" ACTION gerenciar_pedido_form.Release AUTOSIZE
        BUTTON preparar_btn CAPTION "Produzido" PICTURE "preparacao.bmp" ACTION PrepararVenda() AUTOSIZE
        BUTTON transportar_btn CAPTION "Expedido" PICTURE "transporte.bmp" ACTION TransportarVenda() AUTOSIZE
        BUTTON alterar_btn CAPTION "Alterar" PICTURE "edit_new.bmp" ACTION gerped("A",gerenciar_pedido_form.pedido_grid.cell(gerenciar_pedido_form.pedido_grid.value[1],1)) AUTOSIZE
        BUTTON baixar_btn CAPTION "Baixar Venda" PICTURE "edit_ok.bmp" ACTION BaixarVenda() AUTOSIZE
        BUTTON imprimir_btn CAPTION "Reimprimir Pedido" PICTURE "edit_print.bmp" ACTION ReimprimirVenda("P") AUTOSIZE
        BUTTON cancelar_btn CAPTION "Cancelar Venda" PICTURE "edit_delete.bmp" ACTION CancelarVenda("V") AUTOSIZE
    END TOOLBAR

    DEFINE GRID pedido_grid
        ROW    100
        COL    50
        WIDTH  1190
        HEIGHT 420
        ITEMS aRows
        VALUE Nil
        WIDTHS { 75,105,200,250,60,100,160,90,85,60,60,60,60,110}
        HEADERS {"Num. Ped.","Telefone","Nome","Endereço","Número","Complemento","Bairro","Valor Venda","Agendado P/","Hora","Produzido","Expedido","Baixado","Status"}
        FONTNAME "Arial"
        FONTSIZE 9
        TOOLTIP ""
        ONCHANGE Nil
        ONGOTFOCUS Nil
        ONLOSTFOCUS Nil
        FONTBOLD .F.
        FONTITALIC .F.
        FONTUNDERLINE .F.
        FONTSTRIKEOUT .F.
        ONDBLCLICK GerPed("C",gerenciar_pedido_form.pedido_grid.cell(gerenciar_pedido_form.pedido_grid.value[1],1))
        ONHEADCLICK Nil
        ONQUERYDATA Nil
        MULTISELECT .F.
        ALLOWEDIT .F.
        VIRTUAL .F.
        DYNAMICBACKCOLOR {dBackColor,dBackColor,dBackColor,dBackColor,dBackColor,dBackColor,dBackColor,dBackColor,dBackColor,dBackColor,dBackColor,dBackColor,dBackColor,dBackColor}
        DYNAMICFORECOLOR Nil
        COLUMNWHEN {{ ||.f.},{ ||.f.},{ ||.f.},{ ||.f.},{ ||.f.},{ ||.f.},{ ||.f.},{ ||.f.},{ ||.f.},{ ||.f.},{ ||.f.},{ ||.f.},{ ||.f.},{ ||.f.}}
        COLUMNVALID Nil
        COLUMNCONTROLS pedido_grid_data_columncontrols()
        SHOWHEADERS .T.
        CELLNAVIGATION .F.
        NOLINES .F.
        HELPID Nil
        IMAGE Nil
        JUSTIFY { GRID_JTFY_LEFT,GRID_JTFY_LEFT,GRID_JTFY_LEFT,GRID_JTFY_LEFT,GRID_JTFY_LEFT,GRID_JTFY_LEFT,GRID_JTFY_LEFT,GRID_JTFY_LEFT,GRID_JTFY_LEFT,GRID_JTFY_LEFT,GRID_JTFY_LEFT,GRID_JTFY_LEFT,GRID_JTFY_LEFT,GRID_JTFY_LEFT}
        ITEMCOUNT Nil
        BACKCOLOR NIL
        FONTCOLOR NIL
        HEADERIMAGES Nil
        ROWSOURCE Nil
        COLUMNFIELDS Nil
        ALLOWAPPEND .F.
        ALLOWDELETE .F.
        BUFFERED .F.
        DYNAMICDISPLAY Nil
        ONSAVE Nil
        LOCKCOLUMNS 0
    END GRID

    DEFINE FRAME pedido_grid_frame
        ROW    90
        COL    40
        WIDTH  1210
        HEIGHT 440
        FONTNAME "Arial"
        FONTSIZE 9
        FONTBOLD .F.
        FONTITALIC .F.
        FONTUNDERLINE .F.
        FONTSTRIKEOUT .F.
        CAPTION NIL
        BACKCOLOR NIL
        FONTCOLOR NIL
        OPAQUE .T.
    END FRAME

    DEFINE LABEL Label_1
        ROW    60
        COL    90
        WIDTH  70
        HEIGHT 26
        VALUE "Vendas"
        FONTNAME "Calibri"
        FONTSIZE 16
        TOOLTIP ""
        FONTBOLD .F.
        FONTITALIC .F.
        FONTUNDERLINE .F.
        FONTSTRIKEOUT .F.
        HELPID Nil
        VISIBLE .T.
        TRANSPARENT .F.
        ACTION Nil
        AUTOSIZE .F.
        BACKCOLOR NIL
        FONTCOLOR NIL
    END LABEL

    DEFINE RADIOGROUP ven_sit_rbt
        ROW    60
        COL    170
        WIDTH  486
        HEIGHT 28
        OPTIONS { 'Aberta','Produzida','Expedida','Baixada','Cancelada','Todas'}
        VALUE 1
        FONTNAME "Arial"
        FONTSIZE 9
        TOOLTIP ""
        ONCHANGE FiltroVenda()
        FONTBOLD .F.
        FONTITALIC .F.
        FONTUNDERLINE .F.
        FONTSTRIKEOUT .F.
        HELPID Nil
        TABSTOP .T.
        VISIBLE .T.
        TRANSPARENT .F.
        SPACING 81
        BACKCOLOR NIL
        FONTCOLOR NIL
        READONLY Nil
        HORIZONTAL .T. 
    END RADIOGROUP

    DEFINE IMAGE Image_1
        ROW    60
        COL    50
        WIDTH  32
        HEIGHT 32
        PICTURE "entregador.bmp"
        HELPID Nil
        VISIBLE .T.
        STRETCH .F.
        ACTION Nil
    END IMAGE

    DEFINE DATEPICKER data_dtp
        ROW    60
        COL    780
        WIDTH  100
        HEIGHT 24
        VALUE CTOD(" / / ")
        FONTNAME "Arial"
        FONTSIZE 9
        TOOLTIP ""
        ONCHANGE FiltroVenda()
        ONGOTFOCUS Nil
        ONLOSTFOCUS Nil
        FONTBOLD .F.
        FONTITALIC .F.
        FONTUNDERLINE .F.
        FONTSTRIKEOUT .F.
        ONENTER Nil
        HELPID Nil
        TABSTOP .T.
        VISIBLE .T.
        SHOWNONE .F.
        UPDOWN .F.
        RIGHTALIGN .F.
    END DATEPICKER

    DEFINE TEXTBOX ven_id_txt
        ROW    60
        COL    1105
        WIDTH  60
        HEIGHT 24
        FONTNAME "Arial"
        FONTSIZE 9
        TOOLTIP ""
        ONCHANGE Nil
        ONGOTFOCUS Nil
        ONLOSTFOCUS Nil
        FONTBOLD .F.
        FONTITALIC .F.
        FONTUNDERLINE .F.
        FONTSTRIKEOUT .F.
        ONENTER GerPed("N",gerenciar_pedido_form.ven_id_txt.value)
        HELPID Nil
        TABSTOP .T.
        VISIBLE .T.
        READONLY .F.
        RIGHTALIGN .F.
        DISABLEDBACKCOLOR Nil
        DISABLEDFONTCOLOR Nil
        CASECONVERT NONE
        BACKCOLOR NIL
        FONTCOLOR NIL
        INPUTMASK Nil
        FORMAT Nil
        VALUE ""
    END TEXTBOX

    DEFINE LABEL Label_2
        ROW    70
        COL    1035
        WIDTH  59
        HEIGHT 20
        VALUE "Venda No.:"
        FONTNAME "Arial"
        FONTSIZE 9
        TOOLTIP ""
        FONTBOLD .F.
        FONTITALIC .F.
        FONTUNDERLINE .F.
        FONTSTRIKEOUT .F.
        HELPID Nil
        VISIBLE .T.
        TRANSPARENT .F.
        ACTION Nil
        AUTOSIZE .F.
        BACKCOLOR NIL
        FONTCOLOR NIL
    END LABEL

    DEFINE BUTTON bus_ped_btn
        ROW    58
        COL    1170
        WIDTH  30
        HEIGHT 28
        ACTION GerPed("N",gerenciar_pedido_form.ven_id_txt.value)
        CAPTION Nil
        FONTNAME "Arial"
        FONTSIZE 9
        TOOLTIP ""
        FONTBOLD .F.
        FONTITALIC .F.
        FONTUNDERLINE .F.
        FONTSTRIKEOUT .F.
        ONGOTFOCUS Nil
        ONLOSTFOCUS Nil
        HELPID Nil
        FLAT .F.
        TABSTOP .T.
        VISIBLE .T.
        TRANSPARENT .F.
        MULTILINE .F.
        PICTURE "edit_find_peq.bmp"
        PICTALIGNMENT TOP
    END BUTTON

    DEFINE CHECKBOX data_chb
        ROW    60
        COL    680
        WIDTH  88
        HEIGHT 28
        CAPTION "Todas Datas"
        VALUE .F.
        FONTNAME "Arial"
        FONTSIZE 9
        TOOLTIP ""
        ONCHANGE iif(gerenciar_pedido_form.data_chb.value == .t.,gerenciar_pedido_form.data_dtp.visible := .f.,gerenciar_pedido_form.data_dtp.visible := .t.)
        ONGOTFOCUS Nil
        ONLOSTFOCUS Nil
        FONTBOLD .F.
        FONTITALIC .F.
        FONTUNDERLINE .F.
        FONTSTRIKEOUT .F.
        BACKCOLOR NIL
        FONTCOLOR NIL
        HELPID Nil
        TABSTOP .T.
        VISIBLE .T.
        TRANSPARENT .F.
    END CHECKBOX

    DEFINE LABEL Label_3
        ROW    70
        COL    890
        WIDTH  29
        HEIGHT 24
        VALUE "Tipo:"
        FONTNAME "Arial"
        FONTSIZE 9
        TOOLTIP ""
        FONTBOLD .F.
        FONTITALIC .F.
        FONTUNDERLINE .F.
        FONTSTRIKEOUT .F.
        HELPID Nil
        VISIBLE .T.
        TRANSPARENT .F.
        ACTION Nil
        AUTOSIZE .F.
        BACKCOLOR NIL
        FONTCOLOR NIL
    END LABEL

    DEFINE COMBOBOX ven_tip_cmb
        ROW    60
        COL    925
        WIDTH  100
        HEIGHT 20
        ITEMS {"Delivery","Balcão","Mesa","Comanda","Todas"}
        VALUE 0
        FONTNAME "Arial"
        FONTSIZE 9
        TOOLTIP ""
        ONCHANGE FiltroVenda()
        ONGOTFOCUS Nil
        ONLOSTFOCUS Nil
        FONTBOLD .F.
        FONTITALIC .F.
        FONTUNDERLINE .F.
        FONTSTRIKEOUT .F.
        HELPID Nil
        TABSTOP .T.
        VISIBLE .T.
        SORT .F.
        ONENTER Nil
        ONDISPLAYCHANGE Nil
        DISPLAYEDIT .F.
        IMAGE Nil
        DROPPEDWIDTH Nil
        ONDROPDOWN Nil
        ONCLOSEUP Nil
    END COMBOBOX

END WINDOW
Este é o codigo que carrega o formulário com a Grid.

Código: Selecionar todos

procedure LisVen( cArea )

        Local aRows // [1] [11]
/* IF vNUMSTATUSPED == 0
   vNOMESTATUSPED := "Aguardando Produção"
ELSEIF vNUMSTATUSPED == 1
   vNOMESTATUSPED := "Produzido"
ELSEIF vNUMSTATUSPED == 2
   vNOMESTATUSPED := "Expedido"   
ELSEIF vNUMSTATUSPED == 9
   vNOMESTATUSPED := "Baixado"   
ELSEIF vNUMSTATUSPED == 8
   vNOMESTATUSPED := "Cancelado"   
endif */
 	     PRIVATE dBackColor := { |Val| if(Val[14]=="Aguardando Produção",{0,255,0},if(Val[14]=="Baixado",{0,0,255},{128,128,128})) }
        PRIVATE vMIN_ULT := 0
        
        vCODFUNCUS := 15 // USADO PARA VERIFICAR SE USUµRIO TEM ACESSO A CONSULTA
        vVALACESUS := VERNIVELUS(vCODFUNCUS)
        IF vVALACESUS == .F.
           MsgStop("Você não tem acesso a esta função","Não tem Acesso")
           RETURN
        ENDIF
                         
        DECLARE WINDOW gerenciar_pedido.fmg
 
        VEN->( ordSetFocus( 1 ) ) 
        SELE VEN
        VEN->( DBClearRel() )

        verlicenca() // chama função para verificar se cliente esta licenciado e se pode fazer mais operacoes alem do limite de teste

        VEN->( DBGoTop() )        

        if eof()
           MsgInfo("Não existem vendas registradas","Vendas")
           return
        endif
        
        LOAD WINDOW gerenciar_pedido AS gerenciar_pedido_form

        CarregarLisVen()
        
        ACTIVATE WINDOW gerenciar_pedido_form
        
return
// este é o código que carrega os dados no grid

Código: Selecionar todos

function CarregarLisVen()

   IF gerenciar_pedido_form.data_chb.value == .f.
      ORDSCOPE(0,gerenciar_pedido_form.data_dtp.value)   
      ORDSCOPE(1,gerenciar_pedido_form.data_dtp.value)      
      set filter TO VEN_DATAR == gerenciar_pedido_form.data_dtp.value
   endif
   vVEN_TIP := gerenciar_pedido_form.ven_tip_cmb.value

   do while .t.
      vMIN_ULT := 0
      if VEN_SIT != 9 .and. VEN_SIT != 8
         vMIN_ULT := CALCMIN(ven->ven_horaa)
      endif
      if vVEN_SIT == 6 .or. gerenciar_pedido_form.data_dtp.value == ven_datar .and.  gerenciar_pedido_form.data_chb.value == .f. .or.  gerenciar_pedido_form.data_chb.value == .t. 
         if vVEN_TIP >= 1 .AND. vVEN_TIP <= 4 .AND. ven_TIP == vVEN_TIP .OR. vVEN_TIP == 0 .OR. vVEN_TIP == 5
            vNOMESTATUSPED := InformaStatusPedido(ven->ven_sit)
                                              //      {"Num. Ped.","Telefone","Endereço","Número","Complemento","Bairro","Valor Venda","Agendado P/","Hora","Produzido","Expedido","Baixado","status"}
            gerenciar_pedido_form.pedido_grid.AddItem ( {ven->ven_id,ven->ven_tel,ven->cli_nome,ven->cli_end,ven->cli_num,ven->cli_comp,ven->cli_bai,ven->ven_totv,ven->ven_dataa,ven->ven_horaa,ven->ven_horap,ven->ven_horae,ven->ven_horab, vNOMESTATUSPED } )
         ENDIF

      endif
//      msgexclamation("recno "+str(recno()),"recno")      
//      gerenciar_pedido_form.pedido_grid.Value := gerenciar_pedido_form.pedido_grid.ItemCount
      SKIP
      IF vVEN_SIT != VEN_SIT .and. vVEN_SIT != 6 .OR. EOF()
         EXIT
      ENDIF
   ENDDO

   set scope to
   set filter TO 
   
//   gerenciar_pedido_form.pedido_grid.Refresh
return
Editado pela última vez por Toledo em 26 Fev 2016 09:40, em um total de 1 vez.
Razão: Mensagem editada para colocar a tag [ code ]<br>Veja como utilizar esta tag: http://www.pctoledo.com.br/forum/faq.php?mode=bbcode#f2r1
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

HMG.3.0.46 - Exemplos mudança de cor de acordo com o status

Mensagem por Toledo »

Amigo, tente alterar o seguinte:

Procure:

Código: Selecionar todos

Local aRows // [1] [11]
Troque por:

Código: Selecionar todos

Local aRows:={{'','','','','','',0,'','','','','','',''}}
Procure:

Código: Selecionar todos

   vVEN_TIP := gerenciar_pedido_form.ven_tip_cmb.value
Na linha seguinte incluir:

Código: Selecionar todos

gerenciar_pedido_form.pedido_grid.DeleteAllItems
Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
florencio
Usuário Nível 1
Usuário Nível 1
Mensagens: 14
Registrado em: 09 Nov 2014 09:45
Localização: São Paulo / SP

HMG.3.0.46 - Exemplos mudança de cor de acordo com o status

Mensagem por florencio »

Toledo, novamente obrigado pelo apoio. Estou sentindo que esta proximo. Fiz o que pediu mas ainda continua dando erro.
Gostaria de lhe passar mais uma informação relevante.

O Colummcontrols esta da seguinte maneira:
aColumnControls := {{ "TEXTBOX","NUMERIC","9999999" },{ "TEXTBOX","CHARACTER" },{ "TEXTBOX","CHARACTER" },{ "TEXTBOX","CHARACTER" },{ "TEXTBOX","CHARACTER" },{ "TEXTBOX","CHARACTER" },{ "TEXTBOX","CHARACTER" },{ "TEXTBOX","NUMERIC","999,999.99" },{ "TEXTBOX","DATE" },{ "TEXTBOX","CHARACTER" },{ "TEXTBOX","CHARACTER" },{ "TEXTBOX","CHARACTER" },{ "TEXTBOX","CHARACTER" },{ "TEXTBOX","CHARACTER" }}

Qual a maneira correta de inicializar aRows baseado no meu grid? Tentei da forma como sugeriu e de outras maneiras e não tive sucesso.
A primeira e a setima coluna são números, a oitava coluna é data.

Local aRows:={{0,'','','','','','',0.00,CTOD(" / / "),'','','','',''}}

O Erro acontece na hora de chamar o formulário com o grid.

Deixando como estava:
Local aRows ou Local aRows := {}
Ele entra na função para começar a carregar os dados do grid e da erro no momento de adicionar os dados no grid.
gerenciar_pedido_form.pedido_grid.AddItem ( {ven->ven_id,ven->ven_tel,ven->cli_nome,ven->cli_end,ven->cli_num,ven->cli_comp,ven->cli_bai,ven->ven_totv,ven->ven_dataa,ven->ven_horaa,ven->ven_horap,ven->ven_horae,ven->ven_horab, vNOMESTATUSPED } )
Dos campos acima somente o ven_id e o ven_totv são números.
O campo ven_dataa é um campo do tipo data

Um Abraço,
florencio
Usuário Nível 1
Usuário Nível 1
Mensagens: 14
Registrado em: 09 Nov 2014 09:45
Localização: São Paulo / SP

HMG.3.0.46 - Exemplos mudança de cor de acordo com o status

Mensagem por florencio »

Estou um pouco intrigado pois este erro somente acontece quando coloco o codeblock para colocar cor no grid.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

HMG.3.0.46 - Exemplos mudança de cor de acordo com o status

Mensagem por JoséQuintas »

Pelo que entendi, a parte de cores é igual ao tbrowse do console.

Tem o array com a lista de cores { "W/B", "N/W" }

O que vai colocar é o número dessa lista, e não o número da cor.

Cor 7 equivale ao branco, mas não é isso que vai usar, vai usar cores 1 ou 2, porque o array de cores só tem duas cores. (o array acima)
Cor 0 também não existe.

Verifique aonde define cores e aonde usa cores.
A cor selecionada é de acordo com os elementos do array, começa em 1 e termina no tamanho do array.

Se usar número zero, ou número maior que o array, dá o erro que mencionou.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

HMG.3.0.46 - Exemplos mudança de cor de acordo com o status

Mensagem por Toledo »

florencio escreveu:Estou um pouco intrigado pois este erro somente acontece quando coloco o codeblock para colocar cor no grid.
Amigo, desfaz o que lhe passei em minha última mensagem, altere o codeblock para:

Código: Selecionar todos

PRIVATE dBackColor := { || if(AtCellCol(14)=="Aguardando Produção",{0,255,0},if(AtCellCol(14)=="Baixado",{0,0,255},{128,128,128})) }
Incluir a seguinte função no seu código:

Código: Selecionar todos

Function AtCellCol(nColIndex)
Local nRowIndex := This.CellRowIndex
Local Ret_ := GetProperty( "gerenciar_pedido_form", "pedido_grid", "CellEx", nRowIndex, nColIndex )
Return Ret_
florencio escreveu:Utilizo HMG.3.0.46
Tem certeza que é esta versão mesmo?

Os testes que fiz aqui foi com a versão HMG 3.4.2.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
florencio
Usuário Nível 1
Usuário Nível 1
Mensagens: 14
Registrado em: 09 Nov 2014 09:45
Localização: São Paulo / SP

HMG.3.0.46 - Exemplos mudança de cor de acordo com o status

Mensagem por florencio »

Quintas e Toledo Gostaria de agradecer imensamente a contribuição.

Toledo sua ultima sugestão deu certo na versão 3.4.2. Fantástico!! Eu não estava utilizando-a para este sistema pois ela demora muito para compilar. Na versão 3.0.46 realmente não funciona.

Eu usei a IDE Ansi e mesmo assim o sistema ficou com alguns caracteres estranhos. Tem algum comando que posso colocar para ele manter os caracteres como funcionava na versão 3.0.46? Se eu quiser converter para UTF8 vou ter muito trabalho. certo?
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

HMG.3.0.46 - Exemplos mudança de cor de acordo com o status

Mensagem por Toledo »

florencio escreveu:o sistema ficou com alguns caracteres estranhos
Amigo, no seu arquivo principal você usa estes comandos:

Código: Selecionar todos

REQUEST HB_CODEPAGE_PTISO

HB_CDPSELECT("PTISO")
SET LANGUAGE TO PORTUGUESE
Obs.: o primeiro comando antes de Function Main(), e os outros comandos depois do Main().
florencio escreveu:Eu usei a IDE Ansi
O importante também é salvar os PRG na codificação ANSI, veja se no seu editor tem esta opção.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

HMG.3.0.46 - Exemplos mudança de cor de acordo com o status

Mensagem por JoséQuintas »

Detalhe do editor: ANSI com a codificação default do Windows.

Na verdade DOS(*) e Windows usam ANSI, mas o default de cada um é em codepage diferente.
O prompt costuma ser EUA, e o Windows conforme o país, no nosso caso o Brasil.
O Clipper tinha o default como EUA, e o Harbour também.

Tem alguns editores que usam ANSI, mas seguem EUA, e não dão opção de trocar.
Mas a maioria dos editores Windows utilizam o padrão utilizado pelo Windows, o que corresponde ao PTISO do Harbour.

Mais uma coisa:
Alterar pra PTISO não altera o que já está gravado nas bases de dados, ou nos fontes.

E também requer atenção aos caracteres especiais, porque por exemplo, em PTBR não existe o Chr(196) que faz o traço.
Mas pra tudo tem alternativa.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
florencio
Usuário Nível 1
Usuário Nível 1
Mensagens: 14
Registrado em: 09 Nov 2014 09:45
Localização: São Paulo / SP

HMG.3.0.46 - Exemplos mudança de cor de acordo com o status

Mensagem por florencio »

Maravilha pessoal. Vou aplicar estas alterações neste final de semana e apresento os resultados.
Um Abraço a todos e muito obrigado pelo apoio.
Responder