
Au début de l'automne dernier, nous vous avons demandé de soumettre vos questions à propos de la personnalisation des reçus et des rapports dans Microsoft Retail Management System. Maintenant, Kevin Pham, ingénieur en conception de logiciels Microsoft chargé des essais pour l'équipe de développement de Microsoft Retail Management System, vous donne les réponses que vous attendiez. Nous tenons à remercier tous ceux qui ont pris le temps de nous faire parvenir leurs questions et leurs commentaires pour la présente page de questions et réponses. Nous avons reçu beaucoup de questions intéressantes, et Kevin s'est efforcé de répondre au plus grand nombre possible, compte tenu de son horaire chargé. Si vous ne trouvez pas ici de réponse à votre question, nous vous suggérons de la poser sur le site du groupe de discussion Microsoft Retail Management System. Vous verrez que ce groupe public de discussion est fréquenté par de nombreux experts, employés et partenaires de Microsoft qui se feront un plaisir de vous aider. Q : J'aimerais pouvoir rayer les articles supprimés, ajustés ou annulés sur le reçu imprimé et à l'écran. Comment faire? Kevin Pham : Il n'est pas possible de rayer des articles supprimés, ajustés ou annulés sur le reçu imprimé ou à l'écran. Q : J'aimerais voir les articles que je raye, que je supprime ou que j'annule dans une configuration de rapport quotidien. Comment faire? K. P. : Il n'y a pas de rapport qui présente les articles qui ont été rayés, supprimés ou annulés. Q : Comment puis-je établir un reçu pour les articles retournés? J'aimerais imprimer plusieurs copies pour la même opération. J'aimerais aussi obtenir une copie énonçant le motif du retour qui pourrait être placée avec le produit retourné et une autre copie qui serait remise au client. K. P. : Le moyen facile d'y arriver consiste à utiliser la fonction Reprint Receipt (réimprimer le reçu). En appuyant sur Shift-F11, vous pouvez imprimer autant de reçus que vous le désirez. En ajoutant le bloc de code ci-dessous au fichier receipt.xml, on ajoute au reçu un code qui énonce le motif du retour : <IF>
<CONDITION>
Transaction.Type = transactionSales & (Entry.Quantity < 0) amp; Len(Entry.ReasonReturn.Description)
</CONDITION>
<THEN>
<ROW>
"|Reason: |" Entry.ReasonReturn.Description "|"
</ROW>
</THEN>
</IF> Q : Si la réponse ne se trouve pas dans la documentation, comment ajoutez-vous le type Account (compte) à un reçu lorsque le type Tender (mode de paiement) est Account? J'ai essayé d'accéder à Customer.AccountTypeID comme je le ferais en utilisant QSRules, mais cela ne semble pas être défini. Je peux uniquement supposer que l'interface QSRules n'est pas ce qui est utilisé dans les reçus. Ai-je raison? Si c'est le cas, comment puis-je accéder aux données dont j'ai besoin? K. P. : Vous avez raison. L'interface QSRules n'est pas ce qui est utilisé dans les reçus. Voilà pourquoi on ne peut pas utiliser Customer.AccountTypeID dans les reçus : Il existe toutefois une manière de contourner le problème : Ouvrez Manager -> Database -> Customer. Cliquez sur l'onglet Additional, puis entrez la description du compte du client dans la zone de texte Custom Text 1. Par exemple, si le type Account est Revolving (renouvelable), tapez Revolving dans Custom Text 1 (la première zone de texte). Vous pouvez maintenant utiliser Customer.CustomText1 dans les reçus. Q : Nos reçus imprimés contiennent le numéro de compte du client. Nous aimerions que le nom du client soit aussi imprimé sur le reçu. Dans les propriétés des reçus, je vois une option d'impression de l'adresse du client, mais pas du nom du client. Y a-t-il une solution à mon problème? K. P. : Veuillez utiliser Customer.Name dans les reçus. Q : Nous utilisons les codes universels des produits (CUP) de nos fabricants comme codes de recherche d'article. Nous utilisons aussi un simple pistolet marqueur de prix (peu coûteux!) pour étiqueter nos stocks. Existe-t-il un rapport qui fournirait les prix de détail des articles d'une commande d'achat donnée? K. P. : Modifiez le modèle de la liste des alias (Alias List). Remplacez son nom par Custom - PO Item Price.qrp. Vous pouvez récupérer le rapport en sélectionnant Reports -> Custom -> PO Item Price après avoir créé le fichier .qrp. Vous pouvez utiliser l'interrogation SQL suivante pour créer ce rapport : TablesQueried = "from item inner join purchaseorderentry on item.id = purchaseorderentry.itemid inner join purchaseorder on purchaseorderentry.purchaseorderid = purchaseorder.id" Begin Column FieldName = "Item.ItemLookupCode" DrillDownFieldName = "" DrillDownReportName = "" Title = "Item Lookup Code" VBDataType = vbString Formula = "" ColHidden = False ColNotDisplayable = False FilterDisabled = False ColWidth = 1965 GroupMethod = groupmethodNone ColFormat = "" ColAlignment = flexAlignLeftCenter End Column Begin Column FieldName = "Item.Description" Title = "Description" VBDataType = vbString End Column Begin Column FieldName = "Item.BinLocation" Title = "Bin Location" VBDataType = vbString End Column Begin Column FieldName = "Item.Price" Title = "Price" VBDataType = vbCurrency End Column Cela vous permettra d'étiqueter tous les articles dans la zone de réception lorsque vous ne disposez pas d'un PC pour faire une recherche. Modèle : Procurez-vous l'ensemble du modèle de rapport Purchase Order Item Price (prix des articles d'une commande d'achat) créé par Kevin. Q : J'ai été avisé par un fabricant et par l'organisme gouvernemental approprié d'un rappel de sécurité visant un jouet que j'ai vendu. J'ai besoin d'un rapport m'indiquant tous les clients qui ont acheté cet article, afin que je puisse les informer du rappel. J'aimerais voir les renseignements suivants sur le compte : nom, adresse, numéro de téléphone et date d'achat de l'article. Est-ce possible? K. P. : Modifiez le modèle de la liste des clients (Customer List). Remplacez son nom par Custom - Recall List.qrp. Utilisez l'interrogation SQL suivante pour créer le rapport : TablesQueried = "from customer inner join [transaction] on customer.id = [transaction].customerid inner join transactionentry on transactionentry.transactionnumber = [transaction].transactionnumber inner join item on item.id = transactionentry.itemid" Begin Filter FieldName = "[Transaction].Time" FilterOp = reportfilteropBetween FilterLoLim = "<YearStart>" FilterHilim = "<Today>" End Filter Ensuite, ajoutez les colonnes suivantes et supprimez toutes les colonnes inutiles de votre liste des clients : Begin Column FieldName = "Customer.Address" DrillDownFieldName = "" DrillDownReportName = "" Title = "Address" VBDataType = vbString Formula = "" ColHidden = False ColNotDisplayable = False FilterDisabled = False ColWidth = 1580 GroupMethod = groupmethodNone ColFormat = "" ColAlignment = flexAlignLeftCenter End Column Begin Column FieldName = "Customer.Address2" (comme ci-dessus) Title = "Address 2" End Column Begin Column FieldName = "Customer.City" Title = "City" End Column Begin Column FieldName = "Customer.State" Title = "State" End Column Begin Column FieldName = "Customer.Zip" Title = "Zip" End Column Begin Column FieldName = "Item.ItemLookupCode" Title = "Item Lookup code" End Column Begin Column FieldName = "[Transaction].Time" Title = "Date Sold" VBDataType = vbDate End Column Modèle : Procurez-vous l'ensemble du modèle de rapport de liste de rappel (Recall List) créé par Kevin. Q : Avec Microsoft Retail Management System, comment pouvons-nous enregistrer les numéros de série de produits informatiques contenant plus de 20 caractères? Avec Microsoft Axapta, nous pouvons enregistrer dans notre système des numéros de série contenant jusqu'à 40 caractères. K. P. : Microsoft Retail Management System limite la longueur maximale d'un numéro de série à 20 caractères. Kevin Pham est ingénieur en conception de logiciels chargé des essais pour l'équipe de développement de Microsoft Retail Management System. Il travaille aux États-Unis, à Redmond dans l'état de Washington.
|