/
WmsCodeActivity
WmsCodeActivity
WMS 2020 (1.0.3)
Die WmsCodeActivity ist eine Ableitung der herkömmlichen CodeActivity (System.Activities.CodeActivity). Unterschiede zur CodeActivity
Statt der Execute-Methode müssen Sie die ExectuteIntern-Methode implementieren
Zusätzliches Property "Disabled"
WmsCodeActivity (C#)
using System.Activities;
using Accantum.Wms.ActivityContracts.Attributes;
using Accantum.Wms.ActivityContracts.Properties;
namespace Accantum.Wms.ActivityContracts.Base
{
/// <summary>
/// Basisklasse für CodeActivities
/// </summary>
public abstract class WmsCodeActivity: CodeActivity, IWmsActivityBase
{
/// <summary>
/// Kennzeichen, ob die Aktivität auskommentiert ist. Wenn Ja, wird die ExecuteMethode nicht aufgerufen.
/// </summary>
[ExcludeInAnnotation]
[LocalizedDisplayName("Activity_Disabled", typeof(WmsActivityResources))]
[LocalizedDescription("Activity_DisabledDesc", typeof(WmsActivityResources))]
public bool Disabled { get; set; }
/// <summary>
/// Prüft die Aktivitätsversion (<see cref="SupersedesAttribute"/>) und das Disabled-Property
/// </summary>
protected override void CacheMetadata(CodeActivityMetadata a_oMetadata)
{
//Bei deaktivierten Aktivitäten Fehler nicht anzeigen
if (Disabled)
{
a_oMetadata.SetValidationErrorsCollection(null);
a_oMetadata.AddValidationError(CreateDisabledValidationWarning());
}
else {
base.CacheMetadata(a_oMetadata);
}
SupersedesAttribute.AddWarningIfIsSuperseded(GetType(), a_oMetadata);
}
/// <summary>
/// Methode wird vor der Ausführung aufgerufen und prüft das Disabled-Kennzeichen.
/// </summary>
/// <returns>true, wenn die Aktivtät ausgeführt werden soll.</returns>
protected virtual bool BeforeExecute(CodeActivityContext context)
{
if (!Disabled)
return true;
var wmsApi = context.GetExtension<IWmsApiExtension>();
wmsApi.TrackInfo(context, GetDisabledWarning());
return false;
}
protected sealed override void Execute(CodeActivityContext context)
{
if (!BeforeExecute(context))
return;
ExecuteIntern(context);
}
protected abstract void ExecuteIntern(CodeActivityContext context);
}
}
, multiple selections available,
Related content
Aktivitäten
Aktivitäten
More like this
WmsNativeActivity
WmsNativeActivity
More like this
WmsAsyncCodeActivity
WmsAsyncCodeActivity
More like this
(3) WMS Funktionalität nutzen (WmsActivityContracts.dll)
(3) WMS Funktionalität nutzen (WmsActivityContracts.dll)
More like this
WMS Einstellung: IWmsActivitySetting
WMS Einstellung: IWmsActivitySetting
More like this
WmsAccAttributes
WmsAccAttributes
More like this