DSPATR(PR) no RPG programa para proteger o campo
-
09-12-2019 - |
Pergunta
Eu estou desenvolvendo RPG programa no desenvolvimento de software IBM
o que acontece é que eu estou criando um arquivo de vídeo com campo de entrada
Eu estou tentando realizar uma tarefa.
Se eles já a entrada de todos os campo e o outro registro é mostrar o que eu quero proteger o arquivado em que eles basta introduzir o valor até que pressione enter
mas eu estou confundir como posso usar o DSPATR(PR) para proteger o campo
Solução 2
Eu encontrei a resposta para minha pergunta.
Para fazer isso basta ir a propriedades na tela designer > botão direito do mouse em propriedades e localizar palavra-chave protect
e isso irá proteger a tela inteira para o campo em que eles enter até enter
é pressionado para desproteger.
Ele também pode ser feito pela adição de DSPATR(PR)
com o indicador e RPG
para ativar o indicador de campo obrigatório.
Outras dicas
No verde-tela de RPG programa só conhece o que está na tela quando você acertar <enter>
em sua tela.Parece que você quer proteger um campo depois que o usuário tiver inserido os dados no campo.Eu não acho que é possível, a menos que cada campo tem a CHECK(ER)
em cada campo.Que iria ficar chato, dependendo da função do programa.Mãos para baixo a entrada de pessoas preferem continuar a escrever e eles memorizaram exatamente quantas guias e espaços que precisa de chave para introduzir os dados.
Para o estudo purpouse você pode definir atributos de exibição, desde o RPG "back-end" do código, por exemplo, no seu caso, o código hexadecimal valor para proteger (somente leitura) arquivado é "A0", veja o código:
Em DDSSRC:
.....AAN01N02N03T.Nombre++++RLon++TPdBLínPosFunciones+++++++++++++++++++++++++++
A* First declare the variable
A REV1 1A P
A*
A* then, after the display field in function limit you assign it
A*
A FIELD01 14Y 2B 17 42EDTCDE(1)
A DSPATR(&REV1)
Em RPGSRC, basta definir ou limpar quando você precisa:
CL0N01Factor1+++++++Operac&ExtFactor2+++++++Resultado+++++Lon++D+MaMeIg....Comentarios+++++++++
C*
C* Set the hex value in the QDDSSRC variable
C EVAL REV2 = x'A0'
C*
C* Clear the variable
C CLEAR REV1 1
Há muitos códigos hexa para muitos purpouses, basta olhar em volta www :).
um sel 1a b 11 2
Um 99 dspatr (PC)
A 99 DSPANT (RI)
Quando você exibir um campo na tela verde, você é geralmente para I / O. Aqui, eu desmarcaria o campo SEL primeiro e EXFMT o formato de registro no arquivo DISPLAY (DDS).Depois que o usuário pressionar, eu "ligar" o indicador 99. Eu iria então exfmt novamente para exibir a tela.No exemplo, se * in99 estava * ligado, o cursor posicionaria para o campo SEL e a imagem reversa.Você pode fazer o mesmo com proteger dspatr (PR).No seu código, você "desencadeou" o indicador, exibirá a tela.User Hits Insira você "Ligue" o indicador e replop da tela.
No RPG, você pode usar mover * on * in99.
ou você pode usar seton ........ 99.
ou mover '1' * in99.
No CLP, você pode chgvar var (& in99) valor ('1')