Ola Pessoal
Boa Noite
Estou com uma certa dificuldade para montar uma rotina, é o seguinte:
Tenho um Dbf, com os seguintes campos: Equipe:=Space(01), Turno:=Space(01), NrOser:=Space(10), pois bem, o cliente quer digitar apenas duas Ordem de serviços por equipe e por turno, ou seja:
Equipe = A
Turno = Manhã
Data 03-08-2007
Os: 00001
Equipe = A
Turno = Manhã
Data 03-08-2007
Os: 00002
Esta equipe A, nesta data, neste turno manhã, não pode mas ser digitado nada para ela.
Pergunta. Como posso bloquear a rotina para não permitir q o usuário digite outra Os no mesmo dia e turno, então seria duas os. por turno e equipe.
Se alguem puder me ajudar, eu agradeço desde já.
Grande abraço
Num banco de dados só aceitar até dois lançamentos por turno
Moderador: Moderadores
- Ricardo Sales Ribeiro
- Usuário Nível 3

- Mensagens: 279
- Registrado em: 13 Jul 2004 18:06
- Localização: Fortaleza-Ceara
Indexe por Equipe / Turno / Data.
E use o Seek com um contador:
Se conta<2, então vc pode emitir outra OS para a equipe "A" + Turno "M". Se conta=2, não pode.
E use o Seek com um contador:
Código: Selecionar todos
use arquivo
index on equipe+turno+dtos(data) to arquivo
set index to arquivo
Vequipe="A"
Vturno="M"
Vdata=ctod("03/08/2007")
conta=0
seek Vequipe+Vturno+dtos(Vdata)
do whil .t.
if Vequipe=equipe .and. Vturno=turno .and. Vdata=data
conta++
else
exit
endi
skip
endd
wait conta // veja a seguir- Ricardo Sales Ribeiro
- Usuário Nível 3

- Mensagens: 279
- Registrado em: 13 Jul 2004 18:06
- Localização: Fortaleza-Ceara
