-
-
Bonjour,
Sur un formulaire créé en interne, nous souhaiterions récupérer poids et taille à partir des DPC. J’ai créé la fonction distante comme indiqué dans ce forum mais je pense qu’il doit manquer un bout de paramétrage car les champs poids et taille de mon formulaire ne se renseignent pas… J’appelle la fonction à l’aide d’un bouton dans le formulaire.
Voici la fonction dans VS où “Poids” et “Taille” correspondent aux champs du modèle de données.
Merci par avance pour votre aide. Cdt
protected override void RecupDPC(IExecutionContext context)
{
var multi = ModuleAPI.EasilyService.GetLastDPCs(new Module.Contracts.PatientContextValueType[]
{ Module.Contracts.PatientContextValueType.Size, //Taille chumlea
Module.Contracts.PatientContextValueType.TAID, //Taille déclarée
Module.Contracts.PatientContextValueType.TAIC, //Taille mesurée
Module.Contracts.PatientContextValueType.Weight, //Poids mesuré
Module.Contracts.PatientContextValueType.PDSD, //Poids déclaré
});
if (multi != null)
{
if (multi.Any(x => x.Code == “Size” || x.Code == “TAID” || x.Code == “TAIC”))
{
var TailleDPC = multi.Where(x => x.Code == “Size” || x.Code == “TAID” || x.Code == “TAIC”).OrderByDescending(p => p.DateReference).FirstOrDefault();
if (TailleDPC != null)
{
Taille.Value = (int)TailleDPC.ValeurNumerique;
}
}
{
if (multi.Any(x => x.Code == “Weight” || x.Code == “PDSD”))
{
var PoidsDPC = multi.Where(x => x.Code == “Weight” || x.Code == “PDSD”).OrderByDescending(p => p.DateReference).FirstOrDefault();
if (PoidsDPC != null)
{
Poids.Value = (int)PoidsDPC.ValeurNumerique;
}
}}
-
Bonjour,
A première vue, votre fonction n’est pas correcte syntaxiquement il y’a une accolade entre la récupération de la taille et du poids en trop.
J’ai essayé la fonction sur un formulaire après correction et elle fonctionne bien, peut être que vos codes pour les DPCs sont différents des nôtres.Essayez d’afficher les résultats que vous récupérez dans le tableau “multi” dans un champ texte que vous afficherez dans votre formulaire.
Joffrey
-
Bonjour
Merci pour votre retour. A toutes fins utiles j’ai modifié comme suit et ça marche bien :protected override void RecupDPC(IExecutionContext context)
{
{
var lesDPCs = ModuleAPI.EasilyService.GetLastDPCs(EditionContext.ContextData.PatientId);
if (lesDPCs != null && lesDPCs.Any())
{
// Poids
var poidsDPC = lesDPCs.Where(p => p.Code == “PDS” || p.Code == System.Enum.GetName(typeof(Forms.Module.Contracts.PatientContextValueType), Module.Contracts.PatientContextValueType.PDSD))
.OrderByDescending(p => p.DateReference).FirstOrDefault();if (poidsDPC != null)
Poids.Value = (decimal)poidsDPC.ValeurNumerique;var tailleDPC = lesDPCs.Where(p => p.Code == “TAI” || p.Code == System.Enum.GetName(typeof(Forms.Module.Contracts.PatientContextValueType), Module.Contracts.PatientContextValueType.TAIC)
|| p.Code == System.Enum.GetName(typeof(Forms.Module.Contracts.PatientContextValueType), Module.Contracts.PatientContextValueType.TAID))
.OrderByDescending(p => p.DateReference).FirstOrDefault();
// Taille
if (tailleDPC != null)
Taille.Value = (int)tailleDPC.ValeurNumerique;}
}Cordialement
-
The forum ‘Aide aux développements avec FormsStudio’ is closed to new topics and replies.