Regra por Processo 837 - Validar Requisições do Anúncio
Variável atribuída antes de gravar as requisições que estão ligadas ao anúncio da vaga. Ela contém a lista de requisições que estão na grade antes da gravação do registro separadas por |.
Tipo: Alfanumérico
Exemplo:<div class="Code"><p>/* Regra por processo 837 - Validar Requisições do Anúncio<br></br>Esta regra é chamada ao clicar no botão Alterar na tela de anúncios guia requisições.<br></br><br></br>Regra de exemplo: Faz a consistência se as requisições informadas na grade estão com a situação Em andamento ou não iniciada e também que o <br></br>número de requisições não ultrapasse a 3 requisições. <br></br>*/<br></br><br></br>Definir Numero xIndice;<br></br>Definir Alfa xValorItem;<br></br>Definir Cursor CUR_R126RQU;<br></br>Definir Alfa xMensagem;<br></br>Definir ALfa xPulaLinha;<br></br>Definir Alfa xCarAscII;<br></br>Definir Alfa xSitRquAlfa; <br></br>Definir Alfa xDesLis;<br></br>RetornaAscII(13, xCarAscII);<br></br>xPulaLinha = xCarAscII;<br></br><br></br>/* Atribui para a variável xQtd a quantidade de requisições que foram informadas na grade,<br></br>Estas requisições estão informadas na variável de sistema ListaRequisicoesAnuncio separadas por um | (pipe)<br></br>*/<br></br>ListaQuantidade(ListaRequisicoesAnuncio, "|", xQtd);<br></br><br></br>xIndice = 0;<br></br>/* Percorre todas as requisições */<br></br>enquanto (xQtd > xIndice)<br></br>inicio <br></br>xIndice++;<br></br>/* Pega o valor da requisição e atribui a variável xValorItem conforme o índice informado */<br></br>ListaItem(ListaRequisicoesAnuncio, "|", xIndice, xValorItem);<br></br>AlfaParaInt (xValorItem, xCODRQU);<br></br>/* Faz um select na tabela de requisições para identificar a quantidade de vagas que a requisição<br></br>posicionada possui<br></br>*/<br></br>CUR_R126RQU.SQL "SELECT SITRQU FROM R126RQU WHERE CODRQU = :xCODRQU";<br></br>CUR_R126RQU.AbrirCursor();<br></br>se (CUR_R126RQU.Achou)<br></br>inicio<br></br>/* Se a requisição não estiver em andamento ou não iniciada não permite cadastrar esta requisição */<br></br>se (CUR_R126RQU.SITRQU > 1)<br></br>inicio<br></br>IntParaAlfa(CUR_R126RQU.SITRQU, xSitRquAlfa);<br></br>DescItemLista("LSitRqu", xSitRquAlfa, xDesLis);<br></br><br></br>xMensagem = xMensagem + "A requisição " + xValorItem + " está " + xDesLis + ". " + xPulaLinha; <br></br>fim; <br></br>fim;<br></br>CUR_R126RQU.FecharCursor();<br></br><br></br>fim; <br></br><br></br>/* Se possuir alguma mensagem, apresenta para o cliente */<br></br>se (xMensagem <> "")<br></br>inicio<br></br>xMensagem = "Somente é permitido a inclusão de requisições que estejam com a situação em andamento ou não iniciada:" + xPulaLinha + xMensagem;<br></br>mensagem(erro, xMensagem); <br></br>fim;<br></br><br></br>/* Se a quantidade de requisições for maior que 3, exibe a mensagem que informando <br></br>que não é permitido inserir mais de 3 requisições */<br></br>se (xQtd > 3){<br></br>mensagem(erro, "Não é permitido incluir mais de 3 requisições para este anúncio.");<br></br>}</p></div>
Utilização: Gerador de regras, regra por processo 837 - Validar Requisições do Anúncio.
Disponível para o Módulo: RS.
English
Español

English
Español

