Precisa expressar alguma funcao matematica? Conhece o MathXML?Pois e, acabei esbarrando por acaso nesta notacao e gostei bastante do resultado. Como temos muitos professores que utilizam Genexus, vamos dar uma palhinha neste assunto.O que e?O MathML e uma linguagem de notacao que resulta em uma imagem que normalmente e utilizada para produzir uma expressao matematica. De maneira geral,A organizacao que esta apoiando a iniciativa e o W3C, ISO, ou seja, e um assunto serio. Ver:Mathematical Markup Language (MathML) Version 3.0 2nd EditionA MathML for CSS ProfileEsta linguagem e dependente dos navegadores que devem implementar a interpretacao das definicoes da especificacao.Como usar em GenexusSera necessario produzir um conteudo HTML para apresentar a formula matematica, uma forma de fazer isso em Genexus e incluir no Caption de um Textblock. Utilizamos uma variavel &expressao do tipo Character(100) para criar a expressao.Event Start &expressao = ' <math xmlns="http://www.w3.org/1998/Math/MathML">' &expressao += ' <mrow>' &expressao += ' <mi>a</mi>' &expressao += ' <mo></mo>' &expressao += ' <msup>' &expressao += ' <mi>x</mi>' &expressao += ' <mn>2</mn>' &expressao += ' </msup>' &expressao += ' <mo>+</mo>' &expressao += ' <mi>b</mi>' &expressao += ' <mo> </mo>' &expressao += ' <mi>x</mi>' &expressao += ' <mo>+</mo>' &expressao += ' <mi>c</mi>' &expressao += ' </mrow>' &expressao += ' </math>' textblock1.Caption = &expressaoEndeventO resultado e interessante.Atencao! nem todos os navegadores dao suporte ao recurso, o recem lancado Vivaldi, por exemplo, nao consegue interpretar a coisa ainda. Temos ha algum tempo dois modelos de conexao a webservices implementados no Genexus a sua disposicao para que inicie seus projetos: SOAP (Simple Object Access Protocol) e o REST (Representational State Transfer). O primeiro um protocolo de comunicacao e o segundo um modelo de conexao entre sistemas. Esquisito? sim e muito, veja aqui as diferencas de implementacao e uso.Objetos Tipo WebservicesPrimeiramente, Genexus permite que varios de seus objetos atuem como webservice, de forma que podemos implementar cenarios bastante interessantes:Transaction: permite fazer com que o CRUD (Create, Read, Update, and Delete) de uma Transacao opere como webservice. Em outras palavras, podemos disponibilizar servicos que facam o Insert, Update e Delete de registros em tabelas a partir da porcao Business Component da transacao.Procedures: poderiamos implementar regras de negocio mais especificas para realizar tanto a operacao de manutencao das tabelas, como tambem para devolver informacoes que deveriam passar por algum tipo de processamento.Data Provider: permite-nos criar um recurso que facilmente recupera informacoes das tabelas, podendo gerar 'views dinamicas', que associados aos webservices podem alimentar sistemas externos famintos por informacao.Desta forma, a ferramenta suporta, digamos, com o padrao Genexus de fazer as coisas ficarem mais simples, uma ampla gama de possibilidades quando pensamos nos tais webservices.REST & SOAPJa apresentamos alguns exemplos aqui no Genexando a respeito da aplicacao e consumo de webservices SOAP, principalmente devido a sua simplicidade de construcao e uso em Genexus. Pois para consumir basta utilizarmos uma ferramenta que aponta para o WSDL do servico e que cria automaticamente um objeto externo que aponta para a execucao da procedure remota, esta ferramenta e chamada WSDL IMPORT. Para construir, basta pegar uma procedure qualquer e marca-la com as opcoes Main Program = true