Sistemas
    Produtos | Serviços | Suporte | Treinamento | FlagShip | Clientes | Parceiros | Sobre a Worx

FlagShip é uma linguagem fácil de usar

FlagShip é um sistema de banco de dados orientado a objeto no padrão xBase conpativel com CA-CLIPPER 5.2 portavel para sistemas UNIX.
Veja algumas das principais caracteristicas do FlagShip :

  • Permite a criação de sistemas com base em tabelas DBF ou Banco de dados relacionais como
    Oracle,InterBasee CA Ingress.
  • Totalmente compativel com CLIPPER 5.2
  • Não ha curva de aprendizado se o programador estiver familiarizado com qualquer dialeto Xbase tais como
    Dbase,Foxbase ou Clipper.
  • Mesmo que não se tenha alguma esperiencia em dialeto Xbase mas esta familiarizado com outras linguagens como
    (C,C++,Pascal,Delphi,Perl,etc), a curva de aprendizado e minima, pois com aproximadamente 10 comandos você sera capaz de criar sua primeira aplicação.
  • Gera executaveis em 32bits e é portavel para diversas plataformas Unix principalmente o LINUX.
  • Completa documentação on-line FSman com detalhes e exemplos de comandos e funções.
  • Sistemas gerados em FlagShip podem ser acessados por linhas de telefone Dedicadas ou Discadas, posibilitando assim
    o controle On-line de empresas (Matriz/Filiais).

Compare os programas devidamente comentados:


** Arquivo: alo1.prg       // Primeiro programa
? "Alo mundo !"            // similar a printf("\Alo mundo!");


** Arquivo: alo2.prg        // Segundo Programa
set color to "W+/B"         // Seta as cores para preto e Azul
@ 5,10 TO 9,30              // cria um Box
@ 7,12 SAY "Alo mundo !"    // Imprime um texto em uma determinada coordenada da tela


** File: dbf1.prg           // programa para criação de uma tabela de dados
#include "fspreset.fh"      // converte todos os nomes de arquivos em minusculo (extremamente util em ambiente Unix)
PARAMETER par1              // aceita parametros vindos da linha de comando
dbnome := IF(EMPTY(par1), "clientes)       // seta um nome padrão caso não seje passado um valor
IF ! FILE(dbnome + ".dbf")                  // Verifica se existe a tabela, caso não exista a cria
    DBCREATE(dbnome, {{"nome",       "C", 30, 0}, ;
                      {"endereco",   "C", 30, 0}, ;
                      {"numero",     "N",  5, 0}, ;
                      {"bairro",     "C", 20, 0}, ;
                      {"cidade",     "C", 20, 0}, ;
                      {"data_cad",   "D",  8, 0}, ;
                      {"observacoe" ,"M", 10, 0} } )
ENDIF
USE (dbnome) SHARED         // Abre o banco clientes.dbf
IF !USED()                  // Verifica se foi aberto com sucesso
   ? "Não consegui abri o arquivo "+dbnome
   QUIT                     // Aborta a execução do programa
ENDIF
@ 05,05 to 20,75            // Cria um Box na tela
BROWSE(06,06,19,74)         // da um browse editavel na tabela
DBcloseArea()               // Fecha o banco aberto
QUIT                        // Aborta a execução do programa



- Veja como e facil compilar o programa em FlagShip
# FlagShip alo1.prg -o alo1

- Veja como executar o programa
# alo1   (ou ./alo1 )




Programação orientada a Objeto (OOP)

Com o FlagShip pode-se usar a programação orientada a objeto ou programação procedural.
Se você esta familiarizado com programação procedural, não preciza aprender algo sobre OOP, mas se
quiser podera criar aplicações poderosas utilizando OOP.
A programação OOP utilizada no FlagShip é parecida com a C++ e Classe(Y), e é compativel com CA-CLIPPER e VO.
Ja existem classes pre-definidas em FlagShip como o TBROWSE, você pode simplesmente instancialas e comessar a usar
com os comandos usuais.

Veja o exemplo

CLASS myScreen                       // defines a new class
     INSTANCE myRow                  // private to class
     PROTECT  column                 // private to class
     HIDDEN   current                // private to class
     EXPORT   sizeCol := maxcol()    // public access allowed
     EXPORT   sizeRow := maxrow()    // public access allowed

METHOD NewSize(y,x) CLASS myScreen   // similar tu usual function
     sizeRow := y
     sizeCol := x
     return SELF

METHOD Init(y,x) CLASS myScreen    // instantiation, optional params
     column := if (ValType(x) == "N", x, column)
     myRow  := if (ValType(y) == "N", y, myRow )
     return SELF

ACCESS Row CLASS myScreen          // allows read-only public access
     return myRow

ASSIGN Row(y) CLASS myScreen       // allows write-only public access
     myRow := y
     return myRow

// enywhere in the application
//
Local oMyScr := myScreen { 5 }     // instantiate/create object variable
? oMyScr:sizeCol, oMyScr:Row       // access instances
oMyScr:Row := 20                   // assign new value
oMyScr:NewSize (22,50)             // invoke method
quit


FlagShip é marca registrada da MULTSOFT (Todos os direitos reservados)



http://www.sysworx.com.br | worx@sysworx.com.br

Produtos | Serviços | Suporte | Treinamento | Clientes | Parceiros | Sobre a Worx