/*
NEMO


MEAN Stack, mas com OpenUI5
Fábio Pagoti

Fábio Pagoti
Bacharel em Sistemas de Informação pela EACH/USP
Escritor do site abap101.com
Escritor do livro UI5 para desenvolvedores ABAP
Instrutor da OVLY.com.br
Sócio da DUX Innovation, criadora da plataforma na nuvem para clínicas e consultórios GENU.com.br
Realidade SAP:
Fazer POC é ~grátis
Mas o produto é caro
Existe tecnologia SAP boa,
mas nem toda tecnologia boa é da SAP
Quero criar um produto, o que preciso?
MEAN
Antes de falar do

é preciso entender o que é

Características
- Framework Fullstack
- Open Source
- 100% JavaScript

(Banco de Dados)
Correspondente SAP: HANA

Características
- noSQL
- Escalável
- Free & Open Source
- Presente em cases IoT
Exemplo de "linha" e select no MongoDB
{
_id: ObjectId("507f1f77bcf86cd799439011"),
nome: "Fabio",
sobrenome: "Pagoti",
social: [
{
"nome": "LinkedIn",
"url": "https://br.linkedin.com/in/fabiopagoti"
},
{
"nome": "Twitter",
"url": "https://twitter.com/fabiopagoti"
}
]
}
db.pessoas.find({sobrenome: "Pagoti"});
(Back-end
runtime environment)
Correspondente SAP: NetWeaver

Características
- Assíncrono
- Callbacks
- Non blocking I/O
- Escalável
- NPM
Baixando e usando um pacote
npm install node-rfc
var rfc = require('node-rfc');
var client = new rfc.Client({
'user': 'demo', 'passwd': 'welcome',
'ashost': '10.0.0.1', 'sysnr': '00', 'client': '001'
});
client.connect(function(err) {
client.invoke(
'STFC_CONNECTION', {
REQUTEXT: 'Hello SAP!'
},
function(err, res) {
console.log('Result STFC_CONNECTION:', res);
}):
});
(Back-End
web framework)

Correspondente SAP: ICF / Gateway
Características
- Criação de APIs
- HTTP Request / Response
- Roteamento
- Template Engines
- Pacote feito em NodeJS
Exemplo de Roteamento
var express = require('express')
var app = express()
// respond with "hello world"
// when a GET request is made to the homepage
app.get('/', function (req, res) {
res.send('hello world')
})
(front end framework)

Correspondente SAP: SAPUI5 / OpenUI5
Características
- Single Page Apps
- MVC e MVVM
- Componentes
Hello World
<!doctype html>
<html ng-app>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.1/angular.min.js"></script>
</head>
<body>
<div>
<label>Name:</label>
<input type="text" ng-model="yourName" placeholder="Enter a name here">
<hr>
<h1>Hello {{yourName}}!</h1>
</div>
</body>
</html>
NEMO
Se está pensando em criar um app ou produto e pretende usar UI5 por algum motivo, as tecnologias que lhe faltam são aquelas presentes na stack NEMO.
Se este produto precisar se conectar com algum sistema SAP depois... fique tranquilo!


Quanto custa uma instância t2.micro (1 CPU/1 GB RAM) com MEAN/NEMO na AWS?
USD ~60
/ ano
Qual o custo de licença?
Licença?
Reflexões
No nosso trabalho, somos pagos para usar tecnologia SAP ou para resolver problemas do negócio?
Até que ponto a SAP quer "forçar" o uso das tecnologias dela ao invés de resolver os problemas do negócio?
Usar tecnologias não SAP, continuará sendo tão problemático como no passado
no que tange integração?
NEMO - MEAN Stack, mas com OpenUI5
By Fabio Luiz Esperati Pagoti
NEMO - MEAN Stack, mas com OpenUI5
Palestra no SAP Inside Track Campinas dia 4/Fev/2017
- 2,214