Paramétrage d'une vue détaillée d'indicateur clé de procédure enregistrée

Vous pouvez paramétrer une vue détaillée pour un indicateur clé basée sur une procédure enregistrée soit en créant une nouvelle vue ou en copiant une vue existante, puis en la modifiant.

Pour paramétrer une vue détaillée pour un indicateur clé basé sur une procédure enregistrée :

  1. Ouvrez l'écran Vues détaillées (param) et exécutez Filtre actif.
  2. Dans le champ Vue dét., indiquez un nombre entier inutilisé pour identifier la vue détaillée.

    Si vous n'indiquez pas un nombre entier ici, le système attribue automatiquement le nombre entier disponible suivant.

  3. Dans le champ Description, fournissez un nom descriptif par lequel la vue détaillée et son utilisation peuvent être facilement identifiées.
  4. Dans l'onglet Général, effectuez les spécifications de base pour la vue détaillée.

    Pour plus d'informations, reportez-vous à la rubrique Création des paramètres de l'onglet Général pour une vue détaillée.

  5. Facultativement, utilisez l'onglet Col. de sortie pour réorganiser l'ordre dans lequel la sortie doit être affichée et les légendes à afficher pour ces colonnes.

    Les données qui s'affichent sur cet onglet sont issues de la procédure enregistrée identifiée à l'étape 4.

    Pour plus d'informations, reportez-vous à Paramétrage de vues détaillées basées sur procédures enregistrées - Onglet Colonnes de sortie.

  6. Facultativement, utilisez l'onglet Catégories pour indiquer une ou plusieurs catégories à laquelle la vue détaillée appartient.

    Lorsque vous sélectionnez une catégorie, le champ Libellé catégorie est rempli automatiquement.

    Pour plus d'informations, reportez-vous à la rubrique Catégories d'indicateur clé.

  7. Facultativement, utilisez l'onglet Ss-détails pour indiquer un ou plusieurs sous-détails à utiliser conjointement avec la vue détaillée sélectionnée.

    Pour plus d'informations, reportez-vous à Paramétrage d'un sous-détail basé sur une procédure enregistrée.

  8. Facultativement, utilisez l'onglet Param statiques pour indiquer une ou plusieurs paires nom-valeur
    Remarque: 

    Si les données doivent être affinées par une liste de valeurs codée en dur, nous vous recommandons d'attribuer le nom et la valeur sur cet onglet. Vous pouvez ensuite référencer les paramètres statiques lorsque vous configurez le filtre indicateur clé/vue détaillée à l'aide de la syntaxe CRPARM().

    Par exemple, un indicateur clé basé sur une procédure enregistrée Solde du compte pourrait avoir un paramètre statique appelé Cpte. Cela indique à la procédure enregistrée le numéro de compte à utiliser. Le numéro qui est livré avec le produit utilise 10000 (trésorerie), mais les utilisateurs peuvent modifier cette valeur s'ils le souhaitent pour surveiller un autre compte ou si leur compte de trésorerie utilise un numéro de compte différent.

  9. Facultativement, utilisez l'onglet Param. d'entrée pour fournir des valeurs qui peuvent être utilisées dans le traitement des sous-détails, en particulier.
  10. Associez la vue détaillée à un indicateur clé :
    • Lancez l'écran Indicateurs clés (param) et accédez à l'indicateur clé.
    • Dans l'onglet Vues détaillées, sélectionnez la nouvelle vue détaillée et indiquez une description.
    • Sauvegardez l'enregistrement.
  11. Créez votre procédure enregistrée dans votre éditeur de code préféré.  

    Les paramètres d'une vue détaillée diffèrent légèrement de ceux d'un indicateur clé, comme le montre l'exemple suivant :

    
    CREATE PROCEDURE WBCanCoitemPastDueDetailsSp (
      @AsOfDate        DateType
    , @DrillNum        WBDrillNumType
    , @KPINum           WBKPINumType
    , @Id              nvarchar(500)
    , @Parm1           WBSourceNameType
    , @Parm2           WBSourceNameType
    , @Parm3           WBSourceNameType
    , @Parm4           WBSourceNameType
    , @Parm5           WBSourceNameType
    , @Parm6           WBSourceNameType
    , @Parm7           WBSourceNameType
    , @Parm8           WBSourceNameType
    , @Parm9           WBSourceNameType
    , @Parm10          WBSourceNameType
    , @Parm11          WBSourceNameType
    , @Parm12          WBSourceNameType
    , @Parm13          WBSourceNameType
    , @Parm14          WBSourceNameType
    , @Parm15          WBSourceNameType
    , @Parm16          WBSourceNameType
    , @Parm17          WBSourceNameType
    , @Parm18          WBSourceNameType
    , @Parm19          WBSourceNameType
    , @Parm20          WBSourceNameType
    , @Parm21          WBSourceNameType
    , @Parm22          WBSourceNameType
    , @Parm23          WBSourceNameType
    , @Parm24          WBSourceNameType
    , @Parm25          WBSourceNameType
    , @Parm26          WBSourceNameType
    , @Parm27          WBSourceNameType
    , @Parm28          WBSourceNameType
    , @Parm29          WBSourceNameType
    , @Parm30          WBSourceNameType
    , @Parm31          WBSourceNameType
    , @Parm32          WBSourceNameType
    , @Parm33          WBSourceNameType
    , @Parm34          WBSourceNameType
    , @Parm35          WBSourceNameType
    , @Parm36          WBSourceNameType
    , @Parm37          WBSourceNameType
    , @Parm38          WBSourceNameType
    , @Parm39          WBSourceNameType
    , @Parm40          WBSourceNameType
    , @Parm41          WBSourceNameType
    , @Parm42          WBSourceNameType
    , @Parm43          WBSourceNameType
    , @Parm44          WBSourceNameType
    , @Parm45          WBSourceNameType
    , @Parm46          WBSourceNameType
    , @Parm47          WBSourceNameType
    , @Parm48          WBSourceNameType
    , @Parm49          WBSourceNameType
    , @Parm50          WBSourceNameType
    ) AS

    Les enregistrements sont retournés à l'utilisateur via la table temporaire WBTmpDrilldowns. Les colonnes que vous définissez dans cette table temporaire correspondent aux colonnes que vous définissez sur l'onglet Colonnes de sortie sur l'écran Vues détaillées (param). Si vous avez indiqué un écran Détail sur l'écran Vue détaillée (param) et que vous voulez voir les détails de l'enregistrement spécifique, définissez la propriété RowPointer, comme le montre cet exemple :

    
    INSERT INTO WBTmpDrilldowns(
      RefRowPointer
    , DATE01
    , CHAR01
    , INTE01
    , CHAR02
    , CHAR03
    , SessionID
    )
    SELECT
      coitem.RowPointer
    , coitem.due_date
    , co.co_num
    , coitem.co_line
    , co.cust_num
    , custaddr.name
    , @SessionID
    FROM coitem
    INNER JOIN co
       ON co.co_num = coitem.co_num
    LEFT OUTER JOIN custaddr
      ON custaddr.cust_num = co.cust_num
     AND custaddr.cust_seq = co.cust_seq
    LEFT OUTER JOIN item itm
      ON itm.item = coitem.item
    WHERE co.cust_num = ISNULL(NULLIF(@CustNum,''), co.cust_num)
      AND co.co_num = ISNULL(NULLIF(@CoNum,''), co.co_num)
      AND charindex(coitem.stat, @CoitemStatList) > 0
      AND qty_ordered > qty_shipped
      AND ISNULL(due_date, '1900-01-01') = dateadd(dd,="" @latedays,="" @asofdate)="" and="" ship_site="@ParmsSite" charindex(co.stat,="" @costatlist)=""> 0
      AND co.credit_hold = @CredHold
      AND (@LineFilter IS NULL OR coitem.co_line = @LineFilter)
      AND (@ItemFilter IS NULL OR coitem.item = @ItemFilter)
      AND (@ProdCodeFilter IS NULL OR itm.product_code = @ProdCodeFilter)
      AND (@WhseFilter IS NULL OR co.whse = @WhseFilter)
      AND (@StatFilter IS NULL OR co.stat = @StatFilter)
  12. Vous pouvez définir ces valeurs supplémentaires dans la table WBTmpDrilldowns afin d'affecter ce qui est affiché dans la vue détaillée :
    • RowPointer fournit un lien à l'enregistrement spécifique lors du lancement d'un écran détaillé.
    • GoalValue remplace la valeur de but de l'écran Vues détaillées (param).
    • AlertValue remplace la Val. alerte de l'écran Vues détaillées (param).

L'exemple suivant montre la commande client en retard :


CREATE PROCEDURE WBCanCoitemPastDueDetailsSp (
  @AsOfDate        DateType
, @DrillNum        WBDrillNumType
, @KPINum           WBKPINumType
, @Id              nvarchar(500)
, @Parm1           WBSourceNameType
, @Parm2           WBSourceNameType
, @Parm3           WBSourceNameType
, @Parm4           WBSourceNameType
, @Parm5           WBSourceNameType
, @Parm6           WBSourceNameType
, @Parm7           WBSourceNameType
, @Parm8           WBSourceNameType
, @Parm9           WBSourceNameType
, @Parm10          WBSourceNameType
, @Parm11          WBSourceNameType
, @Parm12          WBSourceNameType
, @Parm13          WBSourceNameType
, @Parm14          WBSourceNameType
, @Parm15          WBSourceNameType
, @Parm16          WBSourceNameType
, @Parm17          WBSourceNameType
, @Parm18          WBSourceNameType
, @Parm19          WBSourceNameType
, @Parm20          WBSourceNameType
, @Parm21          WBSourceNameType
, @Parm22          WBSourceNameType
, @Parm23          WBSourceNameType
, @Parm24          WBSourceNameType
, @Parm25          WBSourceNameType
, @Parm26          WBSourceNameType
, @Parm27          WBSourceNameType
, @Parm28          WBSourceNameType
, @Parm29          WBSourceNameType
, @Parm30          WBSourceNameType
, @Parm31          WBSourceNameType
, @Parm32          WBSourceNameType
, @Parm33          WBSourceNameType
, @Parm34          WBSourceNameType
, @Parm35          WBSourceNameType
, @Parm36          WBSourceNameType
, @Parm37          WBSourceNameType
, @Parm38          WBSourceNameType
, @Parm39          WBSourceNameType
, @Parm40          WBSourceNameType
, @Parm41          WBSourceNameType
, @Parm42          WBSourceNameType
, @Parm43          WBSourceNameType
, @Parm44          WBSourceNameType
, @Parm45          WBSourceNameType
, @Parm46          WBSourceNameType
, @Parm47          WBSourceNameType
, @Parm48          WBSourceNameType
, @Parm49          WBSourceNameType
, @Parm50          WBSourceNameType
) AS
DECLARE @Severity INT
, @CoNum    CoNumType
, @CustNum  CustNumType
, @ParmsSite SiteType
, @CoStatList  LongListType
, @CoitemStatList    LongListType
, @CredHold          ListYesNoType
, @LateDays INT
, @LineFilter        CoLineType
, @ItemFilter        ItemType
, @ProdCodeFilter    ProductCodeType
, @WhseFilter        WhseType
, @StatFilter        CoitemStatusType
, @SessionID      RowPointerType
SET @Severity = 0
SET @LateDays = 0
SET @SessionId = dbo.SessionIdSp()
SET @CustNum = dbo.ExpandKyByType('CustNumType', @Parm1) SET @CoNum = dbo.ExpandKyByType('CoNumType', @Parm2) SET @LineFilter = NULLIF(@Parm3, '') SET @ItemFilter = NULLIF(@Parm4, '') SET @ProdCodeFilter = NULLIF(@Parm5, '') SET @WhseFilter = NULLIF(@Parm6, '') SET @StatFilter = NULLIF(@Parm7, '')
IF @CoNum IS NULL AND @LineFilter IS NOT NULL
   SET @LineFilter = NULL
SELECT @ParmsSite = site
FROM parms
SET @CoStatList     = ISNULL(dbo.WBGetDrillParm(@DrillNum, @KPINum, 'COStatusList'), 'POS')
SET @CoitemStatList = ISNULL(dbo.WBGetDrillParm(@DrillNum, @KPINum, 'COITEMStatusList'), 'PO')
SET @CredHold       = ISNULL(dbo.WBGetDrillParm(@DrillNum, @KPINum, 'CredHold'), 0)
SET @LateDays       = ISNULL(dbo.WBGetDrillParm(@DrillNum, @KPINum, 'LateDaysTolerance'), 0)
INSERT INTO WBTmpDrilldowns(
  RefRowPointer
, DATE01
, CHAR01
, INTE01
, CHAR02
, CHAR03
, SessionID
)
SELECT
  coitem.RowPointer
, coitem.due_date
, co.co_num
, coitem.co_line
, co.cust_num
, custaddr.name
, @SessionID
FROM coitem
INNER JOIN co
   ON co.co_num = coitem.co_num
LEFT OUTER JOIN custaddr
  ON custaddr.cust_num = co.cust_num
 AND custaddr.cust_seq = co.cust_seq
LEFT OUTER JOIN item itm
  ON itm.item = coitem.item
WHERE co.cust_num = ISNULL(NULLIF(@CustNum,''), co.cust_num)
  AND co.co_num = ISNULL(NULLIF(@CoNum,''), co.co_num)
  AND charindex(coitem.stat, @CoitemStatList) > 0
  AND qty_ordered > qty_shipped
  AND ISNULL(due_date, '1900-01-01') = dateadd(dd,="" @latedays,="" @asofdate)="" and="" ship_site="@ParmsSite" charindex(co.stat,="" @costatlist)="" 0
  AND co.credit_hold = @CredHold
  AND (@LineFilter IS NULL OR coitem.co_line = @LineFilter)
  AND (@ItemFilter IS NULL OR coitem.item = @ItemFilter)
  AND (@ProdCodeFilter IS NULL OR itm.product_code = @ProdCodeFilter)
  AND (@WhseFilter IS NULL OR co.whse = @WhseFilter)
  AND (@StatFilter IS NULL OR co.stat = @StatFilter)
RETURN @Severity
Rubriques liées