Re: [delphi-br] Sugestão qual melhor form a de trabalhar vocês acham?

2007-06-28 Por tôpico Joao Morais
Ricardo Lima wrote:

> Forma 1:
> Campo do tipo char(1) que recebe os valores:
> C - Cheque
> D - Dinheiro
> K - Cartão
> U - Duplicata
> O - Convenio
> 
> Foma 2: 
> Campo do tipo int que recebe os valores:
> 1 - Cheque
> 2 - Dinheiro
> 3 - Cartão
> 4 - Duplicata
> 5 - Convenio
> 
> Na opnão de vocês qual dessas duas formas seria melhor ou mais correto de
> fazer o cadastro no banco de dados.

Depende.

Primeiro que as duas formas que você colocou fazem a mesma coisa, mas 
uma delas usa campo char e a outra usa campo numérico. Usar campo 
numérico é melhor, mas eu iniciaria em 0 ao invés de 1. A outra forma é 
usar uma referência externa, uma segunda tabela guarda informações dos 
tipos de pagamento.

Vou chamar a sua abordagem de enum e a minha de referência externa. Ok? 
Os comentários servem para qualquer abordagem, não apenas a que você citou.

1. a lista de itens está sujeita a não mudar nunca? Então é melhor usar 
enum. Se houver chance de incluir informações pelo usuário do sistema, 
então é melhor usar referência externa.

2. seu usuário pode querer mudar o nome dos itens? É mais fácil fazer 
isto com referência externa, mas pode ser feito também com enum e um 
pouco de mão de obra.

3. você precisa de comportamento distinto dependendo da opção escolhida? 
Se precisar, enum é muito, muito melhor de trabalhar. Se não precisar, é 
melhor usar referência externa.

4. você precisa de um misto de comportamento diferenciado com um 
controle mais flexível para o usuário? Você pode usar referência 
externa, e dentro dessa referência externa (a tabela de tipos de 
pagamento) você pode usar um enum.

--
Joao Morais


Re: [delphi-br] Sugestão qual melhor form a de trabalhar vocês acham?

2007-06-27 Por tôpico Eduardo Castro Alves
Forma 1, mas acho melhor ter duas tabelas, por que você poderá receber 
em parcelas, em 2 ou mais formas de pagamento.


Eduardo

Ricardo Lima escreveu:
>
> Tenho a seguinte situação:
>
> Uma tabela de contas a receber onde tem um campo chamado forma de 
> pagamento que pode ser:
>
> Cheque, Dinheiro, Cartão, Duplicata, Convenio
>
> Tenho duas formas de trabalhar:
>
> Forma 1:
> Campo do tipo char(1) que recebe os valores:
> C - Cheque
> D - Dinheiro
> K - Cartão
> U - Duplicata
> O - Convenio
>
> Foma 2:
> Campo do tipo int que recebe os valores:
> 1 - Cheque
> 2 - Dinheiro
> 3 - Cartão
> 4 - Duplicata
> 5 - Convenio
>
> Na opnão de vocês qual dessas duas formas seria melhor ou mais correto 
> de fazer o cadastro no banco de dados.
>
> Obrigado.
>
> At.
> Ricardo Lima
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>