GARANTIR DESCONTO

Fórum Conhecimento mORMot Framework #432316

11/01/2013

0

Olá,

Alguém tem conhecimento sobre desenvolvimento com o mORMot Framework ([url]http://synopse.info/fossil/wiki/Synopse+OpenSource[/url])?
Victor Bianchi

Victor Bianchi

Responder

Post mais votado

30/06/2015

olha só quem me deu uma ajuda muito valida foi o Ednei,
construí o meu modelo usando o sequinte exemplo
e até agora tem funcionado bem
http://synopse.info/forum/viewtopic.php?pid=12973#p12973
http://synopse.info/forum/viewtopic.php?pid=12621#p12621
implementei esses exemplos, e a partir dele fui criando os meu métodos,
uso como front-end o extjs

abraços

cido

Aparecido Silva

Aparecido Silva
Responder

Gostei + 2

Mais Posts

28/07/2015

Aparecido Silva

Muito bom !!!

testei bastante o DataSnap, e achei o Mormot Melhor na performace, uso da memoria e
simplicidade na comunicacao com o ExtJs.
com o DataSnap tive que usar os recursos do http://enable-cors.org/ no Mormot cumunicou puro.
tudo que tenho feito funciona sempre de primeira, acho que vale mais a pena o MorMot.

Abraços
Responder

Gostei + 0

29/07/2015

Paulo Monteiro

Bom dia Aparecido

Não sei se a estrutura que envio como exemplo é a mesma da que está trabalhando, se não se importar vou deixar uns pontos para revisar, conforme os teste que fiz:
Os TFDQuery estão acumulando na memoria;
Sugiro criar um FDConection por conexão, caso contrário irá ter problema com múltiplos acesso, tive esse problema, use o FDManager para gerenciar http://docwiki.embarcadero.com/RADStudio/XE6/en/Multithreading_(FireDAC)
Estou usando o JMeter para testar a carga, se fizer o teste na sua aplicação, vai consegui observar o que estou explicando.

Aproveitando, sabe como tirar o result:[], e só aparecer o json que gerou? No datasnap, precisei mudar a forma de retorno.

Abraços,
Paulo
Responder

Gostei + 0

30/07/2015

Aparecido Silva

eu nao fiz nenhum monitoramente até agora, mas vou verificar
sobre tirar o result fiz da sequinte forma
Texto := StrSubst(json,'{"result":[','',999);
Texto := StrSubst(Texto,'}]}','}',999);
contatei até o forum do mormot mas nao me deram solucao

http://synopse.info/forum/viewtopic.php?id=2400

// StrSubst
//******************************************************************//
function StrSubst(const S, Del, Ins: string; Count: Integer): string;
//*******//**********************************************************//
var
I, Found: Integer;
R: string;
begin
R := S;
if (S = '') or (Del = '') or (Del = Ins) then
R := ''
else
begin
Found := 0;
I := 1;
while ((Count = 0) or (Found < Count)) and (I <= Length(R)) do
begin
if Copy(R, I, Length(Del)) = Del then
begin
Inc(Found);
Delete(R, I, Length(Del));
Insert(Ins, R, I);
Inc(I, Length(Ins));
end
else
Inc(I);
end;
end;
Result := R;
end;
Responder

Gostei + 0

30/07/2015

Aparecido Silva

Boa noite Paulo

tem como voce me mostrar como fez o FDConection por conexão ?
tentei fazer aqui e ele nao traz mais dados
retorna uma query vazia.

abraços
Responder

Gostei + 0

31/07/2015

Paulo Monteiro

Bom dia Aparecido.

Como não conheço o mormot, não sei como ele trata essa parte, vi no blog deles que parece que tem um classe do mormot para usar com firedac.
No datasnap fiz da seguinte forma:
Criei um data module, com o FDManger, no create, carrego as configurações de conexão.


procedure TDMConexao.FormCreate(Sender: TObject);
var
  oParams: TStrings;
begin
  oParams := TStringList.Create;
  oParams.Add('Database=localhost:C:\FireBird\EMPLOYEE.FDB');
  oParams.Add('User_Name=SYSDBA');
  oParams.Add('Password=masterkey');
  oParams.Add('Pooled=True');
  FDManager.AddConnectionDef('Fenix_Pooled', 'FB', oParams);
  FreeAndNil(oParams);
  FDManager.Open;
end;

function TDMConexao.getSFConn: TFDConnection;
var
  SFConn: TFDConnection;
begin
  SFConn := TFDConnection.Create(nil);
  SFConn.ConnectionDefName := 'Fenix_Pooled';
  SFConn.Open();
  Result := SFConn;
end;

//na classe que será consumidas os metodos, coloque algo parecido com isso

procedure TCliente.getQtde:Integer;
var
  qry: TFDQuery;
  con: TFDConnection;
begin
  result := -1;
  con := FDConecao.getSFConn;
  qry := TFDQuery.Create(nil);
  qry.Connection := con;
 Try
   Try
        qry.SQL.text := 'select count(*) as Qtde from EMPLOYEE';
        con.Open();
        qry.Open();
         Result := qry.fieldbyname('Qtde').AsInteger;
        con.Close;
    Except
        on e: exception do
            addLog(e.message);
        End;
      end;
    end;
  finally
    con.Free();
    qry.Free();
  end;
end; 


Depois atualiza o seu exemplo e me envio o link, assim que acalmar um pouco as coisas aqui, vou fazer um implementação nele e te devolvo, mas vai me passando as atualizações, por favor.
Responder

Gostei + 0

31/07/2015

Aparecido Silva

Legal,
tava no caminho certo, ja tinha alterado pra essa forma depois que vc me avisou...
achei uns modelos na NET

obrigado.
Responder

Gostei + 1

31/07/2015

Paulo Monteiro

Então, no seu exemplo só está usando rest, mas o correto é o restful.
Sendo assim deveria está tragando o envio através do get/post/put/delete (restful), desta forma que fez, irá ter problema quando enviar bastante dados e tem a questão de segurança.
Responder

Gostei + 1

18/09/2015

Vitorino Almeida

Olá Aparecido.
Por favor, tem como você postar o código de conexão do mORMot com Firebird que conseguiu?

Agradeço antecipadamente
Responder

Gostei + 0

06/01/2016

Adriano Dias

Olá Aparecido!

Para personalizar o retorno do teu metodo, mude o tipo do retorno para TServiceCustomAnswer (com ele você pode especificar um conteúdo personalizado).

Exemplo:


function ReverseString(AText: RawJSON): TServiceCustomAnswer;
begin
  Result.Header := TEXT_CONTENT_TYPE_HEADER;
  Result.Content := FormatUTF8('%',[SO(System.StrUtils.ReverseString(AText)).AsJSon]);
end;

Responder

Gostei + 0

06/01/2016

Aparecido Silva

obrigado pela resposta , vou implementar aqui..
Responder

Gostei + 0

06/01/2016

Aparecido Silva

o que seria o metodo SO() ??
Responder

Gostei + 0

06/01/2016

Adriano Dias

Eu uso "Superobject" para fazer o parser JSON
Responder

Gostei + 1

06/01/2016

Aparecido Silva

deu certo, obrigado
Responder

Gostei + 0

06/01/2016

Aparecido Silva

estou tentando implementar nesse modelo o RestFul dizem que eh melhor e mais rapido
mas nao tenho muita experiencia em OOP, podem me dar uma dica

https://www.dropbox.com/s/udozap9xdjm0k1z/AppMormotSample.rar?dl=0
Responder

Gostei + 0

01/02/2016

Adriano Sérgio

Aparecido, desculpa não ter respondido é que esta bem corrido as coisas por aqui.

Abri teu exemplo e esta rodando, quais seria tuas dúvidas e no que você precisa de ajuda, mais especificamente?
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar