Mono em amostras de código do IBM i
Este repositório será usado para publicar amostras de código .Net e IBM i relacionadas à execução de .Net no IBM i.
Sinta-se à vontade para contribuir com seus próprios exemplos .Net e eu os publicarei aqui.
Mono em mim
Primeiro, você precisará ter o ambiente Mono on i instalado em seu IBM i.
A distribuição de arquivos salvos binários do Mono para IBM i pode ser baixada aqui:
https://github.com/MonoOni/binarydist
Mono na biblioteca
Se desejar chamar facilmente aplicativos .Net no IBM i e integrá-los a fluxos de tarefas padrão, como CL ou RPG, faça download e instale esta biblioteca também em seu IBM i.
https://github.com/richardschoen/MonoOniLibrary
Se você não instalar a biblioteca MONOI, precisará chamar seus aplicativos .Net a partir de uma linha de comando PASE QP2TERM para teste. O comando MONO torna as coisas muito mais fáceis.
Exemplo de arquivos LeiaMe do programa
MonoHelloWorld - modelo de exemplo para aplicativos de console Mono .Net
https://github.com/richardschoen/MonoOniSamples/tree/master/MonoHelloWorld/MonoHelloWorld
MonoListTimeZones - Exemplo para listar todos os fusos horários disponíveis para um aplicativo Mono .Net, uma vez que os valores padrão do sistema ou os valores do ambiente PASE não funcionam.
https://github.com/richardschoen/MonoOniSamples/tree/master/MonoListTimeZones/MonoListTimeZones
MonoAdoNetConnect - Este é um aplicativo para testar a versão ajustada de Calvins do IBM.DB2.Data.dll ajustada para funcionar com libdb400 no IBM i PASE. Compile e execute-o para testar o acesso ao seu banco de dados com .Net.
https://github.com/richardschoen/MonoOniSamples/tree/master/MonoAdoNetConnect/MonoAdoNetConnect
MonoRunPase - Amostra para executar db2 cli, comandos do sistema CL, comandos Qshell ou PASE a partir de um aplicativo .Net.
https://github.com/richardschoen/MonoOniSamples/tree/master/MonoRunPase/MonoRunPase
MonoXmlToCsv - Exemplo de um arquivo XML para um arquivo CSV.
https://github.com/richardschoen/MonoOniSamples/tree/master/MonoXmlFileToCsv/MonoXmlFileToCsv
MonoDirList - Amostra de crawl da árvore de diretórios IFS do IBM i para listar todos os objetos no subdiretório selecionado e filhos para um arquivo IFS e OUTFILE PF.
https://github.com/richardschoen/MonoOniSamples/tree/master/MonoDirList/MonoDirList
MonoMailSend - Este é um comando de remetente de email pronto para produção para enviar email de um sistema IBM i usando a API de email Mailkit/Mimekit que pode ser usada para criar mensagens de email de texto e HTML. Envie diretamente via Office365, Gmail ou qualquer outro servidor SMTP seguro ou inseguro.
https://github.com/richardschoen/MonoOniSamples/tree/master/MonoMailSend/MonoMailSend
MonoNancyDataService - Este é um serviço de microserviço de dados do IBM i baseado em JSON de amostra baseado na estrutura C# NancyFx. Essa é uma ótima maneira de disponibilizar dados e programas do IBM i para outros aplicativos da web ou móveis. O serviço pode ser executado no Windows ou nativo no IBM i. Pode ser front-end para SSL com NGINX.
https://github.com/richardschoen/MonoOniSamples/tree/master/MonoNancyDataService/MonoNancyDataService
MonoOdbcConnect - Este é um programa de amostra para exercitar o novo IBM i Access ODBC Driver for PASE lançado em maio de 2019 pela IBM. https://github.com/richardschoen/MonoOniSamples/tree/master/MonoOdbcConnect/MonoOdbcConnect
Instalando amostras no IFS usando Git
Você pode baixar o arquivo zip do github e descompactar os projetos do Visual Studio ou instalá-los no IFS usando as seguintes sequências de comando git para clonar o repositório.
Em uma sessão do IBM i 5250, inicie o terminal de linha de comandos QShell ou PASE:
STRQSH or CALL QP2TERM
Mude para a pasta raiz. Para este exemplo, clonaremos o código para o diretório /MonoOniSamples IFS do diretório raiz:
cd /
Chame a seguinte linha de comando para clonar o repositório na pasta /MonoOniSamples
git -c http.sslVerify=false clone --recurse-submodules https://github.com/richardschoen/MonoOniSamples.git
Se tudo correr bem, você deverá ter uma nova pasta chamada /MonoOniSamples disponível em seu IFS.