Na função CriaAvs, que tem como objetivo enviar avisos através da framework do Cegid PHC CS Web, estão disponíveis parâmetros opcionais, de forma a permitir a escolha do canal pelo qual se pretenda enviar o aviso. Ou seja, é agora possível enviar o aviso por vários canais, sendo eles o sistema interno de avisos, o Cegid PHC Notify, ou ambos.
A nova estrutura da função CriaAvs é a seguinte:
CriaAvs(stamp As String, 'stamp do ecrã
userAv As String, 'utilizador destinatário;
titulo As String, 'título do aviso;
durl As String, 'ação, ou seja, url interno;
tipo As cEnums.TiposdeAviso, 'tipo de aviso: Alerta, Ação, Redes ou Informação;
Optional usrEnvia As Integer = 0, 'número interno do utilizador que envia o aviso;
Optional ByVal MensagemNotify As String = "", 'conteúdo do aviso, apenas utilizado quando enviado por PHC Notify;
Optional ByVal SuboriginNotify As String = "", 'origem do aviso, por exemplo, tabela/ecrã, apenas utilizado quando enviado por PHC Notify (nome da tabela da origem do aviso : obrigatório quando é passado o stamp do registo);
Optional ByVal urlNotify As String = "", 'url completo para o PHC Notify, por exemplo, https://www.phcsoftware.com/;
Optional canal As cEnums.TipodeCanal = cEnums.TipodeCanal.Aviso 'canal pelo qual se envia o aviso: por sistema interno, PHC Notify, Ambos, E-mail ou Todos;
Optional TituloMonAvs As String = "", 'define o título deste tipo de aviso (coluna da esquerda no ecrã de Gestão de Avisos). Caso não esteja preenchido, a coluna da esquerda passa a estar preenchida com o parâmetro "SuboriginNotify", que, por sua vez, caso não esteja preenchido, é preenchido com o texto "Outros";
Optional DescricaoMonAvs As String = "", 'define a descrição deste tipo de avisos (coluna da direita no ecrã de Gestão de Avisos). Caso não esteja preenchido, a coluna da direita passa a estar preenchida com o parâmetro "MensagemNotify", que, por sua vez, caso não esteja preenchido, é preenchido com o parâmetro do título;
Optional MensagemEmail As String = "", 'mensagem a apresentar no aviso por email. Caso não esteja preenchido, a mensagem passa a estar preenchida com o parâmetro título;
Optional urlEmail As String = "") 'URL do emailNo parâmetro canal, poderão ser passados um dos seguintes valores:
cEnums.TipodeCanal.Ambos: envia o aviso para o sistema interno de avisos e para a aplicação Cegid PHC Notify.
cEnums.TipodeCanal.Aviso: envia o aviso apenas pelo sistema interno de avisos.
cEnums.TipodeCanal.PhcNotify: envia o aviso apenas para a aplicação Cegid PHC Notify.
cEnums.TipodeCanal.Email: envia o aviso apenas para o email.
cEnums.TipodeCanal.Todos: envia o aviso para o email, por aviso interno, e para a aplicação Cegid PHC Notify.
De seguida, é apresentado um exemplo da função CriaAvs, para enviar avisos apenas para a aplicação Cegid PHC Notify quando é gravada uma marcação:
XcUtil.criaAvs(mstamp, mxuRow.itemToString("usno"), "Tem uma nova marcação na Agenda!",$"../pim/mxform.aspx?stamp={xcfox.u_scrypt(mstamp)}", cEnums.TiposdeAviso.Acao, 1,"Foi adicionado a uma nova marcação.","Marcações",$"http://Intranet/pim/mxform.aspx?stamp={xcfox.u_scrypt(mstamp)}",cEnums.TipodeCanal.PhcNotify)A função CriaAvs permite enviar avisos:
Para o sistema interno de avisos.
Para a aplicação Cegid PHC Notify.
Para o sistema interno de avisos e cegid PHC Notify.
Para o email.
Para o sistema interno de avisos, para a aplicação cegid PHC Notify e para o email.
A função CriaAvsExterno permite enviar avisos a clientes e a candidatos via Cegid PHC Notify.
Estas funções estão disponíveis a partir da gama Advanced, e com a subscrição do Cegid PHC ON ativa.
Exemplo de um Evento, para envio de avisos para o Cegid PHC Notify aquando de uma marcação:
Resumo do evento: Ao efetuar uma Marcação, envia notificação para a app Cegid PHC Notify
Ecrã: mxform
Reação ao evento: Programa Interno
Nome do evento: AposIntroduzir
Se Programa Interno, Expressão:
if mainformdataset isnot Nothing Then
dim mxuDtSet = mainformdataset
if mxuDtSet.tables("mxus").haveRows() Then
for Each mxuRow as datarow in mxuDtSet.tables("mxus").Rows()
'Utilização da função para criar Avisos, com mensagem personalizada e navegação para o registo
XcUtil.criaAvs(mstamp, mxuRow.itemToString("usno"), "Agenda de Marcações","", cEnums.TiposdeAviso.Acao,23,"Tem uma nova marcação na sua Agenda! Consulte-a.","MX",$"../pim/mxform.aspx?stamp={xcfox.u_scrypt(mstamp)}",cEnums.TipodeCanal.PhcNotify)
next
end If
end if