Clipper On Line • Ver Tópico - Quando penso que o Flagship vai bem....

Quando penso que o Flagship vai bem....

Aqui é o lugar para bater papo e trocar idéias sobre os mais variados assuntos

Moderador: Moderadores

 

Quando penso que o Flagship vai bem....

Mensagempor JoséQuintas » 16 Mai 2019 18:19

Importante: é a versão velha de Flagship que estou usando, não a versão atual

tela1.png


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"

tela2.png


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.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"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 de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Quando penso que o Flagship vai bem....

Mensagempor asimoes » 16 Mai 2019 18:31

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)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Quando penso que o Flagship vai bem....

Mensagempor JoséQuintas » 17 Mai 2019 12:01

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.

   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, multithread, dbfcdx, ADO+MySql, PNotepad
"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 de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Quando penso que o Flagship vai bem....

Mensagempor JoséQuintas » 17 Mai 2019 12:28

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.

terminal.png


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, multithread, dbfcdx, ADO+MySql, PNotepad
"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 de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes




Retornar para Bate Papo

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 8 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro