https://youtu.be/72hNaAHyiSs
Bom Dia Boa Tarde Boa Noite
Esse Ao Vivo vai estrear as 09:00 do dia 30/09/2020-QUA
DICAS 3107 -WEBDEV TUTORIAL 41 - 30-09-2020-09_00Hrs-QUA-Licao 3.3. - HSAVE - ADICIONAR NOVO PRODUTO - Parte N
Lesson 3.3. Pages for addition and modification
ASSUNTOS
Adicionar um novo produto por meio da página
PAGE_FORMULARIO_DO_PRODUTO
Declarações globais - ADICIONAR -1
PROCEDIMENTO MyPage ( gnProductID é 8 - byte int = - 1 )
VERIFICANDO SE É NOVO REGISTRO OU NAO NA ENTRADA DA TELA
GRAVANDO NOVO REGISTRO OU ALTERANDO
MOSTRANDO DUAS OPCOES DE GRAVACOES
DICAS 3068 -WEBDEV TUTORIAL 1-Licao 1.2-14-09-2020 15hrs-Web development and WEBDEV - PARTE A
DICAS 3069 -WEBDEV TUTORIAL 3-Licao 1.2-14-09-2020 16hrs-Web development and WEBDEV - PARTE B
DICAS 3070 -WEBDEV TUTORIAL 4-Licao 1.2-14-09-2020 17hrs-Web development and WEBDEV - PARTE C
DICAS 3071 -WEBDEV TUTORIAL 5-Licao 1.3-15-09-2020 11hrs-Lesson 1.3. Minha Primeira Pagina - PARTE A
DICAS 3071 -WEBDEV TUTORIAL 5-Licao 1.3-15-09-2020 11hrs-Lesson 1.3. Minha Primeira Pagina - PARTE A
DICAS 3076 -WEBDEV TUTORIAL 10-Licao 1.3-16-09-2020 16hrs-Lesson 1.3. TESTE PAGINA E WDMAP - PARTE F
PlayList WebDev tutorial Amarildo Webdev
Playlist Windev Tutorial Amarildo Windev
Playlist windev Franca PcSoft
Amarildo
Windev
WxSolucoes
Matos Informatica
Repositorio Windev
Site forum Google
Video sobre 3 Mil Videos Windev
PlayList Pedrosao
Video sobre Alfaserver servidor
Ultimo Video manipulacao arquivos
Adicionar um novo produto por meio da página "Formulário do produto"
Acabamos de explicar como modificar um produto. Agora, queremos ser capazes de adicionar um produto. Para isso, não é necessário recriar uma nova página: usaremos a página "PAGE_Product_form" que foi criada anteriormente e a adaptaremos para gerenciar a adição.
- Em primeiro lugar, vamos modificar o modo de abertura da página "PAGE_Product_form":
- Posicione-se na página "Formulário do produto": clique no botão "PAGE_Formulário do produto" que se encontra na barra de documentos aberta.
- Pressione F2 para exibir os diferentes eventos WLanguage da página.
- No evento "Declarações globais", vamos dar um valor padrão ao parâmetro passado para a página. Com efeito, ao modificar o registro, o parâmetro passado sempre corresponde ao identificador do produto a modificar. Mas ao adicionar um registro, o identificador do elemento não existe. Para gerenciar este caso, usaremos o valor padrão "-1".
- Substitua a seguinte linha de código no evento "Declarações globais":PROCESSO MyPage ( gnProductID é 8 - byte int )
pelo código:PROCEDIMENTO MyPage ( gnProductID é 8 - byte int = - 1 ) - Devemos agora gerenciar o valor "-1" (ao adicionar um registro). Substitua o seguinte código:HReadSeekFirst(Product,ProductID,gnProductID)
IF HFound(Product) = False THEN
// Display the list of products
PageDisplay(PAGE_List_of_products)
END
FileToPage()
pelo código:IF gnProductID = -1 THEN
HReset(Product)
ELSE
HReadSeekFirst(Product,ProductID,gnProductID)
IF HFound(Product) = False THEN
// Display the list of products
PageDisplay(PAGE_List_of_products)
END
END
FileToPage()
Vamos estudar este código:- Se o identificador do produto for definido como -1, significa que estamos adicionando um produto. Nesse caso, HReset é executado. Esta função inicializa as variáveis de item no arquivo de dados "Produto" com os valores padrão para gerenciar um novo registro.
- Se o identificador do produto tiver um valor diferente de -1, recuperamos o código usado para abrir o formulário em modificação.
- Feche a janela de código.
- O controle do botão "Validar" também deve oferecer suporte à adição do registro.
- Selecione o controle do botão "Validar" em "PAGE_Product_form".
- Exibe os eventos WLanguage associados ao controle (F2).
- O código no evento "Click (navegador)" não deve mudar: as verificações a serem realizadas são sempre as mesmas. Apenas o código do servidor deve ser modificado.
- No evento "Click (Server)", substitua o código existente pelo seguinte código:PageToFile()
IF gsImagePath <> "" THEN
Product.Visual = fLoadBuffer(gsImagePath)
END
IF Product..NewRecord THEN
HAdd(Product)
ELSE
HModify(Product)
END
PageDisplay(PAGE_List_of_products)
Vamos estudar este código:- ..NewRecord é usado para descobrir se o registro atual deve ser criado.
- Se HRESET foi chamado anteriormente, a propriedade retorna True (novo produto) e o registro deve ser criado pelo HAdd .
- Caso contrário, o registro atual já existe e deve ser modificado pelo HModify .
- HAdd adiciona o registro ao arquivo de dados. Esta função pega os valores na memória e grava o conteúdo dos itens do arquivo no próprio arquivo de dados. Os índices são atualizados imediata e automaticamente. Neste caso, é o arquivo de dados "Produto" que é atualizado.
Observação
O código de teste do novo registro pode ser substituído por HSave . Esta função serve para verificar se o registro já se encontra no arquivo de dados, e permite adicioná-lo ou modificá-lo. O código WLanguage torna-se: PageToFile()
IF gsImagePath <> "" THEN
Product.Visual = fLoadBuffer(gsImagePath)
END
HSave(Product)
PageDisplay(PAGE_List_of_products)
- Salve as modificações ( ou Ctrl + S).
Nenhum comentário:
Postar um comentário