Você está na página 1de 13

Nomenclatura das Variveis

STAR SOFT APPLICATIONS

Star Soft Indstria de Software e Solues

ndice
OBJETIVO ........................................................................................ 3
Definies.......................................................................................... 3
Aplicao........................................................................................... 3
Descrio ......................................................................................... 3
Variveis............................................................................................ 3
Nomenclaturas .................................................................................. 5
Classes.............................................................................................. 7
Funes............................................................................................. 8
Nomenclatura das tabelas ............................................................ 10
Nomenclatura dos campos das tabelas........................................... 10
Selects............................................................................................. 12

Descritivo Nomenclatura de Programao

Objetivo
Este documento tem por objetivo estabelecer as regras a serem observadas na
elaborao de informaes enviadas ao departamento de Desenvolvimento do Star
Soft Applications, bem como a formatao da mesma.

Definies
Entende-se por Nomenclatura, o nome a ser indicado para variveis, funes,
classes, menus e programas desenvolvidos para o Star Soft Applications.

Aplicao
Este documento aplica-se a todos os colaboradores da rea desenvolvimento da
Indstria de Software e Solues da Star Soft.

Descrio
Variveis
As variveis do Sistema, utilizadas em todos os mdulos de desenvolvimento (prg,
menu, classes, forms), sero compostas por um prefixo de 3 letras maisculas ( a
no ser as classes), seguidos de um trao_:

1 letra: caracterstica
C - classe
F - funo
O - objeto
P - parmetro
S - set de classes
V - varivel

Descritivo Nomenclatura de Programao

2 letra: escopo
G - global
L - local
O - objeto
P - privada
R - referncia de array ou objeto

3 letra: tipo
A - array
C - caracter
D - data
L - lgica
N - numrica
O - objeto
U undefined

VGC_ Exemplo: varivel, global, tipo caracter de nome Exemplo.

Nome: Exemplo
Varivel, global, tipo caracter

VLC_UserName - Varivel local do tipo caracter que armazena o nome do usurio

VLN_CurrentYear - Varivel local do tipo numrica que armazena o ano atual

VPD_IssueDate- Varivel privada do tipo data que armazena a data de emisso

VGL_Close - Varivel pblica do tipo lgica que armazena se deve fechar ou no.

PRO_Object - Parmetro do tipo referncia que armazena um objeto. Referncia


significa: Um parmetro que deve ser tratado dentro da funo e no retorno dela a
funo anterior vai t-lo preenchido para tratamento.

FOC_Caption - Mtodo de algum objeto que vai retornar uma funo do tipo caracter.

FLL_Msg - Funo do tipo local que emite mensagem ao usurio.

Descritivo Nomenclatura de Programao

Nomenclaturas

Objetos de desenvolvimento.

VGO_Gen -> Contm todas as funes genricas do sistema..


Exemplo: VGO_Gen.FON_Msg(721) : Exibe uma mensagem.

VGO_Dat -> Contm todas as funes que manipulam dados em arquivos


remotos ou locais.
Exemplo: VGO_Dat.FOL_BeginTransaction(B06) : Abre uma transao
para a tabela B06.

VGO_Dat.FOL_FindExpression(A03_UKEY,
Procura o cliente STAR SOFT.

A03T,

STAR

VGO_Scx -> Contm todas as funes que manipulam objetos.

SOFT)

Exemplo: VGO_Scx.FOU_GetPropertieForm(B06, caption) : Retorna o


valor da propriedade de um form.

Devemos obedecer as seguintes regras na escrita do programa:


A) As variveis e ou funes devem ter algum significado, preferencialmente
em ingls, sempre separadas por maisculas.
Exemplo: VGO_DAT.FOL_FindExpression: letras maisculas entre cada
palavra, sendo que o prefixo totalmente maisculo.
B) Os comandos do Fox devem sempre ser escritos por inteiro em minsculo.
Exemplo:

select
substr
clear
replace

C) Funes padres do fox: minsculo.


Exemplo: -

str(), val(), dtoc()

D) Sempre que utilizar duas comparaes, use and ou or nunca utilize .or. ou
.and.

Descritivo Nomenclatura de Programao

E) Palavras-chaves (if, endif,do): minsculo.


Exemplo:

if VLC_Empresa=Star Soft
do while .T.
enddo
endif

F) Constantes genricas: maisculo.


Exemplo:

FRM_NORMAL
FRM_MODAL
FRM_FILTER

G) Variveis de sistemas do Fox: maisculo.


Exemplo:

_MLINE
_CLIPTEXT
_PAGENO

H) Nomes reservados pelo Fox: maisculo.


Exemplo:

I)

LOCAL
PUBLIC
PARAMETERS
LPARAMETERS
FUNCTION
ENDFUNC

Strings dentro de aspas duplas (), quando necessrio aspas simples (),
depois colchetes ( [ ] ).
Exemplo:

VLC_Empresa 1 = Star Soft


VLC_Empresa 2 = Star Soft
VLC_Empresa 3 = [Star Soft]

J) Variveis lgicas sempre em maisculo .T. e .F.


K) Para comparaes diferentes devemos usar < >.
L) Comentrios:
Tabulados sempre da esquerda, obedecendo o nvel a partir do sinal de
menos ( - ).
Exemplo: *-se VOL_Edit for .T.
if
VOL_Edit
*-- Executa a funo VGO_DAT.FOU_Execute Nothing
VGO_DAT.FOU_ExecuteNothing ()
endif

Descritivo Nomenclatura de Programao

M) Nomes dos arquivos:

Em comando: maisculo
Exemplo:

select A03
VGO_Dat.FOL_OpenTable(A03)

Em comando SQL: minsculo


Exemplo:

Campos: minsculo
Exemplo:

select * from a03 where a03.a03_001_c = Star Soft

replace a03.a03_001_c with Star Soft in A03

Ordenao: maisculo
Exemplo:

select A03
set order to A03_001_C

N) Classes: minsculo

Classes

As classes sero compostas de dois nveis:


1) Sgo_base: principal classe, sendo que a customizao das classes padres do
VFP.
2) As demais classes so as sgo_<Name>, sendo as customizaes das classes do
sgo_Base,
Exemplo: sgo_textbox: contm as classes do tipo cgo_textbox dentro do
sgo_base.
3) Classes padres do Fox: minscula
Exemplo:

thisform.a03_001_c.setfocus()
this.width = 400
this caption = Star Soft

4) Classes customizadas: segue o padro das variveis


Exemplo:

Descritivo Nomenclatura de Programao

this.FOL_Close()
thisform.FOL_ExecuteCursor(.F.)

Funes
Devemos obedecer as seguintes regras na criao e alterao das
funes:
Funo

: FOL_CallModalForm

Parmetros

: PLO_form

: O form que est ativado.

: PLO_object : O objeto atual.


Descrio

: Chama um modal form do form atual.

Retorno

: .T. - se sucesso, .F. - c.c.

Grupo

: FORM

Procura por

: Form, Table

ltima
alterao

: 03/11/2000

Alterado por

: Jos da Silva

Verso

:1

1) Funo : Nome da funo


Exemplo:
2) Parmetros :

FOL_CallModalForm

Devem ser especificados todos os parmetros, recebidos


seguidos de comentrios.

Exemplo:

PLO_Form

: O form que est ativo

PLO_Object : O objeto atual


3) Descrio : Especificao da funo
Exemplo:

Descrio : Chama um modal form do form atual

4) Retorno : O que ser retornado


Exemplo:

Descritivo Nomenclatura de Programao

.T. se sucesso, .F. c.c

1-OK, 2-Cancel, 3-Abort, 4-Retry, 5-Ignore, 6-Yes, 7No String alterada.


5) Grupo: Os critrios de classificao dos grupos so: onde e para que ser
usada

Array: Quando o foco principal do programa for manipulao de


matrizes

Cursor: Quando o foco principal do programa for manipulao de


cursores

Database: Quando o foco principal do programa for manipulao de


Banco de Dados do Fox e Tabelas. Exemplo: Gravar, Apagar,
Cancelar.

DateTime: Quando o foco principal do programa for manipulao com


datas e ou horas.

Form: Quando o foco principal for alterar valores do form ou do(s)


objeto(s).

General: Quando a funo tiver vrias utilidades ou no se encaixar


em nenhum outro grupo.

SQL: Quando o foco principal for manipulao com base de dados


Client Server.

6) Procura por: O objetivo da procura a funo


Exemplo:

Conexo
Tempo, Converso, Segundos, Horas
Tabela, Arquivo, Procura, Seek
Abertura, Tabelas, Grupos de Arquivos

7) ltima alterao: Data da ultima alterao da funo.


8) Alterado por: Nome da ltima pessoa que alterou.
9) Verso: A medida que a funo for alterada deve ser somado 1 na sua verso.

Descritivo Nomenclatura de Programao

Comentrios

Todos os comentrios devero iniciar por *- + comentrio seguindo sua


identificao como:

*- Se o nome da empresa for Star Soft.


if VLC_CompanyName = "STAR SOFT"
*- Se o ano corrente por igual a 2000, ento o bug do milnio deve ser
tratado.
if VLN_CurrentYear = 2000
endif
endif

Nomenclatura das tabelas


Todos os mdulos do sistema so identificados por uma letra. Os nomes das
tabelas do sistema so compostos por uma letra que corresponde ao mdulo mais
um seqencial de dois dgitos como:

A01 : A - Mdulo de cadastros gerais. 01-Cadastro de bancos.


A03 : A - Mdulo de cadastros gerais. 03-Clientes.
M01 : M - Folha de Pagamento. 01-Colaboradores.

Nomenclatura dos campos das tabelas


Os campos devem ter como prefixo o nome da tabela + seqencial de trs dgitos +
o tipo de informao armazenada como:
A03_001_C - Esse um campo que pertence a tabela A03 (clientes), o
primeiro campo da tabela e armazena informao do tipo texto.

Todas as tabelas do sistema possuem como padro os seguintes campos :

Descritivo Nomenclatura de Programao

10

UKEY - Esse o campo que identifica o registro. uma chave composto por 20
caracteres. Dever ser criado um ndice primrio por esse campo.
USR_NOTE - Campo memo para comentrio do registro. Poder ser
registrado at quatro comentrios por registro.
TIMESTAMP - Data/Hora da ltima alterao do registro. Dever ser criado um
ndice do tipo regular por esse campo.
STATUS - Contm a informao "W" de Writable que indica que esse campo j
foi gravado no banco de dados.
SQLCMD - Campo do tipo memo utilizado para gerao de instruo SQL para
atualizao no banco de dados.
MYCONTROL - Campo do tipo caracter de 1 posio. Deve variar entre "1" ou
"". Se "1", indica que o registro foi alterado. Ento no tratamento de um cursor
para atualizao no banco de dados, s sero tratados os registros que
tiverem a informao "1" gravada.
INTEGRATED - Campo caracter de 26 posies que possui "1", "" branco ou
"0" na posio da letra correspondente ao mdulo que o registro foi integrado.
CIA_UKEY - Ukey da empresa que o registro foi inserido. Esse campo dever
ter um ndice do tipo regular.

Para relacionamento, dever ser utilizado o nome da tabela relacionada + _UKEY


como sufixo. Exemplo:
Tabela J10 - Nota Fiscal de Venda.
Possui o campo A03_UKEY - Identificador da tabela de clientes

Para as tabelas de cadastro, o primeiro campo dever ter numerao automtica


dever cadastrado no arquivo Y42. Exemplo: A01_001_C, A03_001_C,
J10_001_C, T04_001_C.

Propriedades do tipo caption, tooltip e mensagens de tela.

Todas as propriedades do tipo caption, tooltip, mensagens de tela e logs devero


ser escritas em minsculo em tela e cadastrado depois a traduo pelo menos em
portugus no arquivo Y01.

Descritivo Nomenclatura de Programao

11

Selects
Todas as selects do sistema devero ser escritas para os trs bancos de dados:
SQL Server, Oracle e DB2. As selects devem ser escritas em maisculo. Todas as
tabelas remotas devero ter como prefixo a expresso STAR_DATA@. Essa
expresso ser substituda depois pelo nome do banco de dados + proprietrio +
nome da tabela. Para as selects escritas em SQL, dever ser escrito (NOLOCK)
aps o nome da tabela.

Descritivo Nomenclatura de Programao

12

As informaes contidas neste documento esto sujeitas modificao sem notificao. Nomes de
Empresas, de pessoas, endereos e dados utilizados como exemplos dentro deste documento, so
fictcios, utilizados apenas para ilustrar o potencial do produto. Nenhuma parte deste documento pode
ser reproduzida ou transmitida de nenhuma forma ou por nenhum meio eletrnico ou mecnico, por
qualquer propsito, sem a permisso expressa e escrita da Indstria de Software e Solues Star Soft.
Trabalho desenvolvido pela rea de Capacitao e Documentao Reviso 0 (2006).
2006 Indstria de Software e Solues Star Soft. Todos os direitos esto reservados.
Todas as marcas registradas apresentadas neste documento so de propriedade de seus fabricantes.

Descritivo Nomenclatura de Programao

13