- GC99
- Nombre de messages : 4
Date d'inscription : 28/07/2017
Erreur SDK avec ModifyCard
Lun 25 Sep 2017 - 17:56
Bonjour
Je suis a mes premieres expériences avec le SDK Acomba et lorsque j'essaie de mettre a jour des données d'un client j'Ai le message d'erreur 3
Ce message a comme description ceci :
"Cette fiche n'est pas réservée"
Que dois-je faire?
Y-a-til un champ qui doit activé dans la fiche client
Si oui lequel?
J'arrive a récupérer le client et lui assigner mes valeurs provenant d'une struct que j'ai créé qui se nomme oCustomer
oCustomer je le recoit en parametre avec toutes les nouvelles valeurs que je veux mettre a jour dans Acomba
AcoSDK.Customer CustomerInt = new AcoSDK.Customer();
// Variables pour les erreurs
long iError = 0;
try
{
iError = CustomerInt.GetCard(iCardPos);
if (iError == 0)
{
try
{
CustomerInt.CuName = oCustomer.CuName;
CustomerInt.CuAddress = oCustomer.CuAddress;
CustomerInt.CuCity = oCustomer.CuCity;
CustomerInt.CuWebAddress = oCustomer.CuWebAddress;
CustomerInt.CuPostalCode = oCustomer.CuPostalCode;
CustomerInt.CuPhoneNumber[(AcoSDK.PhoneType)1] = oCustomer.CuPhoneNumber1;
CustomerInt.CuPhoneNumber[(AcoSDK.PhoneType)2] = oCustomer.CuPhoneNumber2;
CustomerInt.CuSalesRepNumber = oCustomer.CuSalesRepNumber;
CustomerInt.CuSalesRepCP = oCustomer.CuSalesRepCP;
CustomerInt.CuTerritoryNumber = oCustomer.CuTerritoryNumber;
CustomerInt.CuTerritoryCP = oCustomer.CuTerritoryCP;
CustomerInt.CuWebAddress = oCustomer.CuWebAddress;
iError= CustomerInt.ModifyCard(false);
if(iError!=0)
{
string sErrorMessage = string.Empty;
sErrorMessage = m_Acomba.GetErrorMessage((int)iError);
LogError(...);
}
}
catch (Exception ex)
{
LogError(...);
}
}
else
{
LogError(...);
}
}
catch (Exception ex)
{
LogError(...);
}
return iError;
PS J'ai aussi essayer avec CustomerInt.ModifyCard(true);
Merci d'avance et bonne journée!
Je suis a mes premieres expériences avec le SDK Acomba et lorsque j'essaie de mettre a jour des données d'un client j'Ai le message d'erreur 3
Ce message a comme description ceci :
"Cette fiche n'est pas réservée"
Que dois-je faire?
Y-a-til un champ qui doit activé dans la fiche client
Si oui lequel?
J'arrive a récupérer le client et lui assigner mes valeurs provenant d'une struct que j'ai créé qui se nomme oCustomer
oCustomer je le recoit en parametre avec toutes les nouvelles valeurs que je veux mettre a jour dans Acomba
AcoSDK.Customer CustomerInt = new AcoSDK.Customer();
// Variables pour les erreurs
long iError = 0;
try
{
iError = CustomerInt.GetCard(iCardPos);
if (iError == 0)
{
try
{
CustomerInt.CuName = oCustomer.CuName;
CustomerInt.CuAddress = oCustomer.CuAddress;
CustomerInt.CuCity = oCustomer.CuCity;
CustomerInt.CuWebAddress = oCustomer.CuWebAddress;
CustomerInt.CuPostalCode = oCustomer.CuPostalCode;
CustomerInt.CuPhoneNumber[(AcoSDK.PhoneType)1] = oCustomer.CuPhoneNumber1;
CustomerInt.CuPhoneNumber[(AcoSDK.PhoneType)2] = oCustomer.CuPhoneNumber2;
CustomerInt.CuSalesRepNumber = oCustomer.CuSalesRepNumber;
CustomerInt.CuSalesRepCP = oCustomer.CuSalesRepCP;
CustomerInt.CuTerritoryNumber = oCustomer.CuTerritoryNumber;
CustomerInt.CuTerritoryCP = oCustomer.CuTerritoryCP;
CustomerInt.CuWebAddress = oCustomer.CuWebAddress;
iError= CustomerInt.ModifyCard(false);
if(iError!=0)
{
string sErrorMessage = string.Empty;
sErrorMessage = m_Acomba.GetErrorMessage((int)iError);
LogError(...);
}
}
catch (Exception ex)
{
LogError(...);
}
}
else
{
LogError(...);
}
}
catch (Exception ex)
{
LogError(...);
}
return iError;
PS J'ai aussi essayer avec CustomerInt.ModifyCard(true);
Merci d'avance et bonne journée!
- GC99
- Nombre de messages : 4
Date d'inscription : 28/07/2017
Re: Erreur SDK avec ModifyCard
Mar 26 Sep 2017 - 9:26
Bonjour
Pour ceux que cela intéresse j'ai trouvé le problème
Il faut juste ajouter la ligne suivante :
CustomerInt.ReserveCard(iCardPos);
Cela sert a réserver la fiche le temps que nous la modifions pour empêcher q'une autre personne la modifie en même temps que nous
C'est comme un genre de Lock sur la fiche
Aussi dans la commande suivante :
iError= CustomerInt.ModifyCard(true);
Le paramètre true veut dire de libérer la fiche client une fois la mise a jour effectué
Voilà! Sur ce je vous souhaite une belle journée a tous!
Pour ceux que cela intéresse j'ai trouvé le problème
Il faut juste ajouter la ligne suivante :
CustomerInt.ReserveCard(iCardPos);
Cela sert a réserver la fiche le temps que nous la modifions pour empêcher q'une autre personne la modifie en même temps que nous
C'est comme un genre de Lock sur la fiche
Aussi dans la commande suivante :
iError= CustomerInt.ModifyCard(true);
Le paramètre true veut dire de libérer la fiche client une fois la mise a jour effectué
Voilà! Sur ce je vous souhaite une belle journée a tous!
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum