With Lock no clientdataset
Como posso impedir dois usuários acessarem um registro ao mesmo tempo com with lock com clientdataset?
Desde já agradeço.
Desde já agradeço.
Rosinaldo Dias
Curtidas 0
Respostas
Marco Salles
25/05/2013
Qual a tecnologia que vc esta utilizando ????
DBX ???
DBX ???
GOSTEI 0
Rosinaldo Dias
25/05/2013
delphi 2010 + firebird 2.5 + dbexpress
GOSTEI 0
Marco Salles
25/05/2013
com vc esta configurando o providerDataFlags ? e o updateMode do DataSetProvider ????
GOSTEI 0
Rosinaldo Dias
25/05/2013
eu já coloquei o updatemode para upWhereKeyOnly e configuerei o provideflags também
GOSTEI 0
Rosinaldo Dias
25/05/2013
Na verdade eu precisava do passo a passo mais detalhado desde do select até o código do programa para bloquear o registro.
o meu programa é para agendamento de consultas e trabalha em rede. Preciso bloquear o registro para quando outro usuário tentar acessar o mesmo horário, apareça a mensagem dizendo que aquele horário esta sendo usado.
se puder me ajudar, agradeço muito.
Valeu.
o meu programa é para agendamento de consultas e trabalha em rede. Preciso bloquear o registro para quando outro usuário tentar acessar o mesmo horário, apareça a mensagem dizendo que aquele horário esta sendo usado.
se puder me ajudar, agradeço muito.
Valeu.
GOSTEI 0
Marco Salles
25/05/2013
tente configure o ProviderFlags do campo que vc quer o Bloqueio com a opção
ProviderFlags = [pfInUpdate, pfInWhere]
ps) No SqlDataset e no clientdataset
ProviderFlags = [pfInUpdate, pfInWhere]
ps) No SqlDataset e no clientdataset
GOSTEI 0
Marco Salles
25/05/2013
tente configure o ProviderFlags do campo que vc quer o Bloqueio com a opção
ProviderFlags = [pfInUpdate, pfInWhere]
ps) No SqlDataset e no clientdataset
ProviderFlags = [pfInUpdate, pfInWhere]
ps) No SqlDataset e no clientdataset
ps) este bloqueio so será obersavado no ApplyUpdades e não simplesmente no Post Ok
GOSTEI 0
Rosinaldo Dias
25/05/2013
Como posso capturar essa exceção de erro?
obrigado.
obrigado.
GOSTEI 0
Marco Salles
25/05/2013
Procure por onEconcileError do clientdadatset ou pesquise no evento de UpdateError do respectivo datasetProvider
o Clientdataset não propaga exceção ...
qq dúvida volte a postar
[]sdç
o Clientdataset não propaga exceção ...
qq dúvida volte a postar
[]sdç
GOSTEI 0
Rosinaldo Dias
25/05/2013
Se eu travar o registro dando with lock será que eu perderei muito a performance do meu banco de dados ?
GOSTEI 0
Marco Salles
25/05/2013
muito não .. Melhor que so seja o campo em questão e não todos os campos .. A performance cai pq a instrução sql gerada
para o bloqueio é maior
para o bloqueio é maior
GOSTEI 0
Rosinaldo Dias
25/05/2013
Muito obrigado pela ajuda. Se pintar alguma dúvida, eu posto pra vc novamente.
Que Deus te abençoe.
Que Deus te abençoe.
GOSTEI 0