Importante: é a versão velha de Flagship que estou usando, não a versão atual
Como dá pra ver no fonte:
- entra no programa mostra "Programa certo mostra este aviso".
- dentro do DO WHILE, se teclar F2 mostra "apertou F2"
Mas no Linux, compilado/linqueditado com Flagship....
F2 mostra a mesma mensagem de quando entra no módulo
Parece que o Flagship perdeu a informação de referência ao fonte, e aciona fonte errado.
Até procurei se a função STATIC existe em outro módulo (seria uma possibilidade) mas não existe.
Já apaguei todos os .o (obj), todos os .c, e até todos os .prg
Muito doido isso.
No momento nem sei o que fazer, talvez apagar alguns dos fontes pra ver se faz alguma diferença.
Quando penso que o Flagship vai bem....
Moderador: Moderadores
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Quando penso que o Flagship vai bem....
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/
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/
Quando penso que o Flagship vai bem....
Isso me lembra format c: resolver qualquer zueira
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Quando penso que o Flagship vai bem....
A coisa é pior do que mostrei....
Pra conseguir alguma coisa, acrescentei aqueles DO CASE, CASE .F., ENDCASE.
Ou seja, fonte que não faz nada.
Num resumo:
- mostra a mensagem "antes do do while"
dentro do do while:
- mostra a tecla pressionada
- aciona algo conforme a tecla, sendo que F2 mostra "teclou F2", e nas outras faz outras coisas
- caso não tenha nada pra tecla, aparece "nenhum CASE"
- depois de qualquer tecla, e analisar os CASES, mostra "saiu do case"
- e finalmente ESC sai fora
O que está acontecendo:
- tecla de espaço: ok, mostra o ascii 32, mostra "nenhum case", "saiu do case"
- tecla ESC: ok, mostra o ascii 27, sai fora
- tecla F6: ok, entra no case nKey == K_F6
- teclas F2 a F5: mostra o ascii 27, e sai fora
Isso foi depois dos CASE .F., agora trocou F2 a F5 por retornar código ascii inválido.
sem os CASE .F., aparecia "aviso antes do do while", como se o fonte estivesse chamando ele mesmo ao teclar de F2 a F5.
Pergunta:
Alguém aí experiente, que possa saber o que essas teclas poderiam fazer, ou no Linux, ou no putty?
Pra conseguir alguma coisa, acrescentei aqueles DO CASE, CASE .F., ENDCASE.
Ou seja, fonte que não faz nada.
Código: Selecionar todos
mVendedor := Space(2)
MsgExclamation( "Aviso antes do DO WHILE" )
DO WHILE .T.
Mensagem( "<F2>Pedidos <F3>Pend <F4>Destino <F5>Consulta <TAB>Plano Pgto" + ;
" <F6>Estoque <F7>Pedido <F8>Localizar <F10>BDI <K>KIT <F11> Sair" )
IF BrowseNavigate( oMyBrowse, @nKey )
DO CASE
CASE .F.
CASE .F.
CASE .F.
ENDCASE
LOOP
ENDIF
MsgExclamation( "Tecla " + Ltrim(Str(nKey)) )
DO CASE
CASE .F.
CASE .F.
CASE .F.
ENDCASE
DO CASE
CASE nKey == K_F2
MsgExclamation( "Apertou F2" )
F2_Pedidos()
oMyBrowse:RefreshAll()
CASE nKey == K_F3
F3_Compra()
oMyBrowse:RefreshAll()
CASE nKey == K_F4
F4_Destino( @pDestino, @aItemList )
oMyBrowse:RefreshAll()
CASE nKey == K_F5
F5_Consulta( @aItemList, oMyBrowse, pDestino, @c_Espec, @mVendedor )
oMyBrowse:RefreshAll()
CASE nKey == K_F6
F6_Estoque()
oMyBrowse:RefreshAll()
CASE nKey == K_F7
F7_Pedido( @aItemList, @c_Espec )
oMyBrowse:refreshAll()
CASE nKey == K_F8
f8_Pesquisa()
oMyBrowse:refreshAll()
CASE nKey == K_F10
F10_Bdi()
CASE Chr( nKey ) $ "kK"
K_Kits( aItemList, oMyBrowse, mVendedor )
oMyBrowse:refreshAll()
CASE nKey == K_TAB
TBPR->( dbSkip(-1) )
IF TBPR->( Bof() )
TBPR->( dbGoBottom() )
ENDIF
oMyBrowse:refreshAll()
CASE nKey == K_F11 .OR. nKey == K_ESC
n_rec := PRO1->( RecNo() )
PRO1->( dbSetOrder(1) )
FOR n_i := 1 TO Len( aItemList )
PRO1->( dbSeek( aItemList[ n_i, 1 ] ) )
PRO1->( RecLock() )
REPLACE pro1->qde_Pe WITH Max( 0, PRO1->qde_pe - aItemList[ n_i, 9 ] )
PRO1->( RecUnlock() )
IF Val( Substr( aItemList[ n_i, 1 ] , 1 , 1 ) ) > 7
KITPRO->( dbSeek( Substr( aItemList[ n_i, 1 ], 3, 3 ) ) )
KITEM->( dbSeek( KITPRO->cod_KIt ) )
DO WHILE ! KITEM->( Eof() ) .AND. KITEM->cod_KIt == KITPRO->cod_Kit
PRO1->( dbSeek( KITEM->cod_pro ) )
PRO1->( RecLock() )
REPLACE pro1->qde_Pe WITH Max( 0, PRO1->qde_pe - aItemList[ n_i, 9 ] )
PRO1->( RecUnlock() )
KITEM->( dbSkip() )
ENDDO
ENDIF
NEXT
PRO1->( dbSetOrder( 1 ) )
PRO1->( dbGoto( n_rec ) )
SetCursor(1)
SetColor( cSays )
EXIT
OTHERWISE
MsgExclamation( "Nenhum CASE" )
ENDCASE
MsgExclamation( "Saiu do DO CASE" )
ENDDO
CLOSE DATABASES
RETURN
FUNCTION F2_Pedidos()
Num resumo:
- mostra a mensagem "antes do do while"
dentro do do while:
- mostra a tecla pressionada
- aciona algo conforme a tecla, sendo que F2 mostra "teclou F2", e nas outras faz outras coisas
- caso não tenha nada pra tecla, aparece "nenhum CASE"
- depois de qualquer tecla, e analisar os CASES, mostra "saiu do case"
- e finalmente ESC sai fora
O que está acontecendo:
- tecla de espaço: ok, mostra o ascii 32, mostra "nenhum case", "saiu do case"
- tecla ESC: ok, mostra o ascii 27, sai fora
- tecla F6: ok, entra no case nKey == K_F6
- teclas F2 a F5: mostra o ascii 27, e sai fora
Isso foi depois dos CASE .F., agora trocou F2 a F5 por retornar código ascii inválido.
sem os CASE .F., aparecia "aviso antes do do while", como se o fonte estivesse chamando ele mesmo ao teclar de F2 a F5.
Pergunta:
Alguém aí experiente, que possa saber o que essas teclas poderiam fazer, ou no Linux, ou no putty?
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/
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/
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Quando penso que o Flagship vai bem....
Depois do post veio a luz.....
Não tem a ver com flagship.
Provavelmente na atualização do putty, ou reinstalação do Windows 10, a configuração default voltou.
O que tem a ver?
Só olhar:
Teclas de função como ESC + outros caracteres
O que parecia ser executar o mesmo módulo ao teclar F2.....
é que era algo como ESC ENTER, mas que pela tela não deu pra perceber, porque nem piscava.
Mas... porque F6 funcionava?
Sei lá... parece que não vale pra tudo que é Fn
Não tem a ver com flagship.
Provavelmente na atualização do putty, ou reinstalação do Windows 10, a configuração default voltou.
O que tem a ver?
Só olhar:
Teclas de função como ESC + outros caracteres
O que parecia ser executar o mesmo módulo ao teclar F2.....
é que era algo como ESC ENTER, mas que pela tela não deu pra perceber, porque nem piscava.
Mas... porque F6 funcionava?
Sei lá... parece que não vale pra tudo que é Fn
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/
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/
