PC SOFT
ONLINE REPOSITORY
FOR WINDEVWEBDEV AND WINDEV MOBILE

Home |  | Sign in | English US
MINI SAAS EXAMPLE
Published by Boller
in the category Tools
New features



Description
MINI SAAS EXAMPLE

Software como serviço, do inglês Software as a service (SaaS), é uma forma de distribuição e comercialização de software. No modelo SaaS, o fornecedor do software se responsabiliza por toda a estrutura necessária à disponibilização do sistema (servidores, conectividade, cuidados com segurança da informação) .... outros sistemas, sem precisar de intervenção humana É CRIADA A NOVA BASE DE DADOS para cada Cliente.

//CODIGO GLOBAL

//SAAS
HOpenConnection(ConnCatalogo)
HChangeConnection(T000_SAAS_Config,ConnCatalogo)
HChangeConnection(T001_SAAS_Catalogo,ConnCatalogo)
HModifyStructure(T000_SAAS_Config,hmsBackgroundTask)
HModifyStructure(T001_SAAS_Catalogo,hmsBackgroundTask)
HCreationIfNotFound(T000_SAAS_Config)
HCreationIfNotFound(T001_SAAS_Catalogo)

//CLIENTES
//NAO ABRE A CONEXAO DOS CLIENTES SOMENTE ABRE NA TELA DE LOGIN


// CODIGO BOTAO

//Login na base do cliente
//exemplo carga SAAS CATALOGO
//1, 1, ADRIANO, 14421060000192, 0, ADRIANO, 123, CLAVIO MOLINARI, 1029, CAPAO DA IMBUIA, CURITIBA, PR, 82810210, adrianoboller@gmail.com, 41999491800, localhost, 4900, admin, SAAS_Adriano01, localhost, 4900, admin, SAAS_Adriano02

IF HReadSeek(T001_SAAS_Catalogo,T001_Cliente,EDT_Login,hIdentical) = True THEN

IF HFound(T001_SAAS_Catalogo) = True AND T001_SAAS_Catalogo.T001_Senha_Site = EDT_Senha

ConnCliente..Server = T001_SAAS_Catalogo.T001_SAAS_Server01
ConnCliente..User = T001_SAAS_Catalogo.T001_SAAS_User01
ConnCliente..Password = T001_SAAS_Catalogo.T001_SAAS_Password01
ConnCliente..Database = T001_SAAS_Catalogo.T001_SAAS_Database01
ConnCliente..Provider = hAccessHFClientServer

HOpenConnection(ConnCliente)

//todas as tabelas do programa 01
HChangeConnection(T001_Clientes,ConnCliente)
HChangeConnection(T002_Produtos,ConnCliente)

//todas as tabelas do programa 01
HModifyStructure(T001_Clientes,hmsBackgroundTask)
HModifyStructure(T002_Produtos,hmsBackgroundTask)

//todas as tabelas do programa 01
HCreationIfNotFound(T001_Clientes)
HCreationIfNotFound(T002_Produtos)

ELSE
Info("Senha Inválida!!!!")
END

ELSE
Info("Usuário não encontrado!!!!")
END


------------------estrutura sql--------------------

-- Script generated by WINDEV on 02/07/2019 13:23:21
-- Tables of Saas.wda analysis
-- for Oracle

-- Creating the T000_SAAS_Config table
CREATE TABLE T000_SAAS_Config (
T000_SAAS_ConfigID NUMERIC(19,0) PRIMARY KEY ,
T000_Descricao VARCHAR2(255) UNIQUE ,
T000_Valor CLOB );

-- Creating the T001_Clientes table
CREATE TABLE T001_Clientes (
T001_ID NUMERIC(19,0) PRIMARY KEY ,
T001_Cliente VARCHAR2(50) ,
T001_CNPJ VARCHAR2(20) DEFAULT '0',
T001_InscricaoEstadual VARCHAR2(20) ,
T001_Endereco VARCHAR2(50) ,
T001_Numero VARCHAR2(20) ,
T001_Bairro VARCHAR2(50) ,
T001_Cidade VARCHAR2(50) ,
T001_UF VARCHAR2(2) ,
T001_CEP VARCHAR2(10) ,
T001_Email VARCHAR2(50) ,
T001_Celular VARCHAR2(20) );
CREATE INDEX WDIDX_T001_Clientes_T001_00000 ON T001_Clientes (T001_Cliente);

-- Creating the T001_SAAS_Catalogo table
CREATE TABLE T001_SAAS_Catalogo (
T001_SAAS_Catalogo_ID NUMERIC(19,0) PRIMARY KEY ,
T001_Login_Site VARCHAR2(50) ,
T001_Senha_Site VARCHAR2(50) ,
T001_Cliente VARCHAR2(50) ,
T001_CNPJ VARCHAR2(20) DEFAULT '0',
T001_InscricaoEstadual VARCHAR2(20) ,
T001_Endereco VARCHAR2(50) ,
T001_Numero VARCHAR2(20) ,
T001_Bairro VARCHAR2(50) ,
T001_Cidade VARCHAR2(50) ,
T001_UF VARCHAR2(2) ,
T001_CEP VARCHAR2(10) ,
T001_Email VARCHAR2(50) ,
T001_Celular VARCHAR2(20) ,
T001_SAAS_Server01 VARCHAR2(50) ,
T001_SAAS_User01 VARCHAR2(25) ,
T001_SAAS_Password01 VARCHAR2(25) ,
T001_SAAS_Porta01 NUMERIC(10,0) DEFAULT 0,
T001_SAAS_Database01 VARCHAR2(25) ,
T001_SAAS_Server02 VARCHAR2(50) ,
T001_SAAS_Porta02 NUMERIC(10,0) DEFAULT 0,
T001_SAAS_User02 VARCHAR2(25) ,
T001_SAAS_Password02 VARCHAR2(25) ,
T001_SAAS_Database02 VARCHAR2(25) ,
T001_SAAS_Provider01 VARCHAR2(50) ,
T001_SAAS_Provider02 VARCHAR2(50) );
CREATE INDEX WDIDX_T001_SAAS_Catalogo_00001 ON T001_SAAS_Catalogo (T001_Cliente);

-- Creating the T002_Produtos table
CREATE TABLE T002_Produtos (
T002_ID NUMERIC(19,0) PRIMARY KEY ,
T002_Produto VARCHAR2(50) UNIQUE ,
T002_Unidade VARCHAR2(20) ,
T002_ValorUnitario NUMERIC(38,6) DEFAULT 0);

-----------------------------

Por que cada registro do catalogo tem a string de conexão?
R. Para poder colocar a base do cliente em outro servidor

Por que tenho conexão 1 e conexão 2 no catalogo?
R. Para saber onde esta o servidor master e o slave no caso de replicação.


Why does each catalog record have the connection string?
R. In order to place the client base on another server

Why do I have connection 1 and connection 2 in the catalog?
R.To know where the master and slave are in the case of replication.
Illustrations, screen shots
none
none
User reviews
(To evaluate this resource, click 'Write a review')
JOELSON SOUZA
Ótimo.