Repository for developing TL++ and POUI projects for the Totvs Protheus environment.
O projeto é desenvolvido em:
-
Angular CLI: 16.2.8
-
Node: 18.18.0
-
Package Manager: npm 9.8.1
-
OS: win32 x64
-
Angular: 16.2.11 ... animations, common, compiler, compiler-cli, core, forms ... platform-browser, platform-browser-dynamic, router
@angular-devkit/architect 0.1602.8 @angular-devkit/build-angular 16.2.8 @angular-devkit/core 16.2.8 @angular-devkit/schematics 16.2.8 @angular/cli 16.2.8 @schematics/angular 16.2.8 rxjs 7.5.7 typescript 5.1.6 zone.js 0.13.3
O layout da aplicação segue o padrão do PO UI Totvs Protheus
Site Oficial PO UI - https://po-ui.io/guides/getting-started
- Verificar versão do angular atual compativel com o POUI:
npm update
- Passos para instalação do PO UI:
ng new po-proj-routine-company --skip-install
- Verificar as dependencias do angular no arquivo package.json:
npm version @angular/rxjs
npm install rxjs@~7.5.5 --save
npm list rxjs
- Executar o comando na pasta raiz do projeto:
npm install
- Adiconando o pacote @po-ui/ng-components:
ng add @po-ui/ng-components
- Rode o seu projeto:
ng serve
- Instalando po-page-login, po-modal-password-recovery, po-page-blocked-user, po-page-dynamic-table:
ng add @po-ui/ng-templates
- Gerar a build do projeto - Será criada uma pasta chamada dist na raiz do projeto "build de produção" ou "build de release".:
ng build --configuration=production
- Entrar na raiz do projeto e atualizar:
ng update @po-ui/[email protected] --allow-dirty --force
- Entrar na raiz do projeto e atualizar:
ng update @po-ui/[email protected] --allow-dirty --force
- para criar um novo componente. Entrar na pasta raiz do projeto(po-proj-function-company) :
ng g c nome-componente
-
Ir no arquivo app.module.ts e importar o componente se necessário de acordo com a documentação do PO UI pegar no arquivo .ts do componente o conteudo da propriedade do selector para poder instanciar no html que será mostrado. Colocar na chamada do componente a class css padrão
-
Criar um serviço: navegar ate a pasta app
ng generate service services/sample-po-service
- Criar a aplicação web.
- Gerar a build de produção da aplicação web.
- Compactar a pasta que a build gerou e renomear para que a extensão fique como .app .
- Compilar o arquivo compactado .app no RPO. Basta compilá-lo normalmente, ele será compilado como resource e ficará no RPO.
- Criar um fonte com uma função, que será a rotina de menu.
- Nesse fonte, você utilizará a função FWCallApp para chamar a aplicação gerada, sendo que o parâmetro principal da FWCallApp é exatamente o nome do arquivo .app que você compilou como resource no RPO (po-proj-function-company).
- Excluir rotina do rpo: po-proj-function-company.
- Apagar a pasta dist do projeto angular PO UI.
- Fazer as alterações no projeto e gerar novo build
- Zipar a pasta gerada na pasta dist
- Mudar a extensão de zip para app
- Copiar o arquivo po-proj-function-company.app para a pasta do protheus onde existe a function tlpp que chamará o app.
- Compilar no rpo do protheus os 2 arquivos.
- Apagar a pasta(po-proj-function-company) em \Protheus_Data\http-root\app-root
- Chamar rotina pelo protheus para gerar a pasta novamente
Este projeto está sob a licença MIT. Consulte o arquivo LICENSE para obter mais detalhes.