Accueil > Forum > > > > Problème asp - oracle
Problème asp - oracle
lundi 14 février 2005 à 11:33:13 |
Problème asp - oracle

olivierdubuisson
|
Bonjour à tous,
Lors du développement d'une application en asp pour la gestion d'un économat hospitalier, je rencontre le problème suivant:
Un encodeur crée une commande dans un écran de sélection des produits. Il clique ensuite sur le bouton "sauver".
La commande est traitée au niveau serveur et l'encodeur reçoit un message comme quoi sa commande est bien sauvegardée.
Au niveau du serveur, au lieu
d'avoir une seule commande, j'en ai deux: une qui est la copie conforme
de ce que l'encodeur a entré, et l'autre, qui contient une commande
avec le même nombre de produits, la même quantité mais des id produit
totalement différents.
Cette situation arrive de façon aléatoire.
Ma question est la suivante: est ce
qu'un développeur a déjà rencontré ce genre de situation, est il
possible que ce soit un problème hardware au niveau du serveur (mémoire
paginée ou autre)?
Je suis dans le flou absolu, quelqu'un peut il m'aider?
Je tiens à la disposition de tous les codes et fichiers de résultats.
D'avance un grand merci à tous et toutes qui posteront une réponse...
O. D.
|
|
lundi 14 février 2005 à 11:48:47 |
Re : Problème asp - oracle

roro06
|
Bonjour
Faudrait effectivement voir les codes, car là ... Cause "classique" : l'enregistrement des données en bdd se fait sur la même page que l'affichage (de la confirmation, par exemple) . Résultat : si l'utilisateur clique sur actualiser, ou appuie sur F5, on a un enregistrement en double ( ou une erreur de clé en doublon, c'est selon. Il faudrait voir comment est déterminé ton id produit) Je ne pense pas à un pb matériel
Cordialement Roro webDev
|
|
lundi 14 février 2005 à 11:59:49 |
Re : Problème asp - oracle

olivierdubuisson
|
Voici le code brut retiré du fichier... C'est la fonction de sauvegarde des valeurs commandées.
En fait, l'encodeur a créé une commande à 8:53:56. Une autre commande,
avec exactement les mêmes quantité, les mêmes prix unitaire mais avec
des produits différents est arrivée dans la db à 8:56:00.
Pour le cas du bouton F5 ou Actualiser, l'utilisateur est directement
redirigé sur une autre page lors de la commande, il ne peut donc pas
passer deux fois dans le script.
Ce qui m'inquiete, ce sont ces 2 minutes entre les deux commandes.
L'encodeur est seul sur le serveur, il n'a jamais encodé deux commandes et ferme son browser après chaque commande.
Je reste à votre disposition pour toute informaiton complémentaire et attend vos réactions sur ce sujet,
O.D.
'******************************************************************
Private Sub ParSave(pNbrPrdo)
dim Sql
dim Id_Demand
dim id_DemandsDet
dim i
dim coutTotal
dim varPriceUnit
dim swError
dim swPrixNul
swError =false
'Response.Write "<SCRIPT LANGUAGE='JavaScript'>"
'Response.Write "alert('passe')"
'Response.Write "CursorWait();"
'Response.write "document.FormCommande.btnCom2.disabled = true;"
'Response.Write "</SCRIPT>"
couTotal = 0
for i = 1 to pNbrPrdo
varPriceUnit = request("c" & i)
'-- Prix Total du produit
if request("c" & i) <> "" then
varPriceUnit =
replace(request("c" & i ), "." , ",")
coutTotal =
cdbl(coutTotal) + cdbl(varPriceUnit)
end if
next
if coutTotal <> "" and coutTotal <> "0" then
coutTotal = replace(coutTotal,",",".")
else
CoutTotal =0
end if
Response.Write "CoutTotal = " & coutTotal
' WriteTraceLine ("coutotal =" & coutTotal)
swPrixNul = false
'-- Test le cas où une commande n'aurait que des prix nuls
for i = 1 to pNbrPrdo
If tabquantite(i) <> "0" then
swPrixNul = True
exit for
End if
next
if coutTotal <> "0" or swPrixNul = True then
Response.write "<script LANGUAGE='javascript'>"
Response.write "document.FormCommande.btnCom2.disabled = true;"
' document.FormCommande.btnCom4.disabled = true;
Response.Write "</script>"
id_Demand = GetNextSequenceNr("Demands")
sql = "INSERT INTO Demands ("
sql = sql & " DemandsId, Demandsdate, ServiceId, Status, Read,"
sql = sql & " Type, Servicedest, ReccreId, Recmodid, TotalCommand )"
sql = sql & " VALUES (" & id_Demand & ", "
sql = sql & "'" & now() & "', "
sql = sql & Session("ServiceId") & ", "
sql = sql & " '1', "
sql = sql & " 'N', "
sql = sql & " 'D', "
sql = sql & " Null, "
sql = sql & Session("UserId") & ", "
sql = sql & Session("UserId") & ", "
sql = sql & CoutTotal & " ) "
' Response.Write "<br> sql = " & sql
on error resume next
OraSession.BeginTrans
if OraExecsql(sql) < 0 then
OraSession.DbRollback
' call Msg2("Valeurs non sauvées","red")
Else
OraSession.DbCommitTrans
' call Msg2("Valeurs sauvées","green")
for i = 1 to
pNbrPrdo
'-- Sauve les produits qui ont
une quantite et un prix >=
0
If
Session("tabQuantite1")(i) <> "0" then ' and
(request("b" & i )) <> "0"
id_DemandsDet =
GetNextSequenceNr("DemandsDet")
sql = "INSERT INTO Demandsdet ("
sql = sql & " DemandsDetId,
DemandsId, SigpharmId, Status, Qty,"
sql = sql & " Qtydelivered,
ReccreId, Cond, Unitprice )"
sql = sql & " VALUES (" &
id_DemandsDet & ", "
sql = sql & Id_demand &
", "
'
sql = sql & tabSigPharmId(i)
& ", "
sql = sql & Session("tabSigPharmId1")(i) & ", "
sql = sql & " '1', "
'
sql = sql & tabquantite(i) *
tabConditionnement(i) & ", "
sql = sql & Session("tabQuantite1")(i) *
Session("tabConditionnement1")(i) & ", "
sql = sql & 0 & ", "
sql = sql & Session("UserId")
& ", "
'
sql = sql &
tabConditionnement(i) & ", "
sql = sql &
session("tabConditionnement1")(i) & ", "
varPriceUnit =
replace(request("b" & i ), "," , ".")
sql = sql & varPriceUnit
& " )"
on error resume next
OraSession.BeginTrans
if
OraExecsql(sql) < 0 then
OraSession.DbRollback
'
Response.Write "<h2><font color =
red><b>Valeurs non
sauvées<b><br></font></h2>"
'
swError = true
Else
OraSession.DbCommitTrans
end if
end if
next
'
Response.Write "<h2><font color=green><b>Valeurs
sauvées<b><br></font></h2>"
if swError = true then
call
Msg2("Valeurs non sauvées","Red")
else
call Msg2("Valeurs sauvées","Green")
end if
End If
'''else
''' Response.write "<script LANGUAGE='javascript'>"
''' Response.write "document.FormCommande.btnCom2.disabled = false;"
''' Response.Write "</script>"
Session.Contents.Remove("tabQuantite1")
Session.Contents.Remove("tabConditionnement1")
Session.Contents.Remove("tabSigPharmId1")
End if
End Sub
|
|
Cette discussion est classée dans : problème, asp, commande, niveau, encodeur
Répondre à ce message
Sujets en rapport avec ce message
Problème de niveau avec les ID [ par niki1291 ]
Bonjour à toutes et à tous, J'ai un problème avec des champs "asp:TextBox" et "asp:ImageButton". Je leur attribue une ID à chacun mais n'arrive pas à
asp et c# problème de conversion de type [ par dada63 ]
Bonjour, désolée si le sujet est mal placé, je ne savais pas trop où le mettre. Voilà le problème, je souhaite créer un panier de commande en asp.ne
Problème Date sql server, ASP.NET [ par MzSrH ]
Bonjour a tous! Encore un autre problème [^^langue3] J'ai un formulaire sous ASP.NET avec un champ pour la Date. L'orsque je récupère la date et que j
Problème ASP - ORACLE [ par yosboss ]
Bonjour, Je veux établir une connexion ASP avec une base de données ORACLE distante et puis exécuter des requêtes.. Je ne suis pas sûr de ce que j'a
IIS et ASP.NET [ par chakiraziza ]
Bonjour, Je viens d'installer Visual Web Developer 2008 et le serveur ISS de windows XP professionnel. Le problème se pose lorsque je veux visualise
Contenue impossible ! [ par Ceriize ]
Bonjour alors j'ai un problème avec ASP.NET [Visual Web developper 2008] Donc je vous informe je suis débutant sur VBWD Donc je crée application asp.n
Crystal report ASP.NET SQL server [ par MzSrH ]
Bonjour a tous, J'ai encore un autre problème... Je travail actuellement sur un projet en ASP.NET, le problème que j'ai est le suivant : D'une part j
problème de compatibilité avec IE au niveau des css [ par abdiallo ]
Bonjour, J'ai une application faite avec asp mais les styles (tailles, positions) de balises ne sont pas respectés avec IE alors que sous chrome et mo
timeout/session [ par verbeyst ]
Bonjour, Je reprends un travail fait par un collègue. Il s'agit d'une appli asp.net, utilisant des sessions. Voici le scénario qui pose problème: L
Problème de publication de mon site ASP.NET/VB (il ne trouve pas la masterPage) [ par neotof ]
Voila j ai essayé d'hébergé mon site sur deux hébergeur différent et je rencontre le même message d'erreur: http://neotof.brinkster.net/ http://aspsp
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|