Besoin d'aide pour les données de Microsoft Dynamics GP 10
-
28-09-2019 - |
Question
J'ai besoin de retourner le contenu de la fenêtre Zoom Distribution Créditeurs à une autre application que je vous écris. Je l'ai utilisé avec succès eConnect pour retirer les entrées Créditeurs transaction mais ne peut pas trouver où obtenir le détail de l'élément de ligne. Quelqu'un peut me diriger dans la bonne direction? Je ne l'ai jamais travaillé avec Dynamics. Je ne suis pas contre aller directement à la base de données, mais (jusqu'à présent) n'ai pas trouvé de très bonnes références pour la conception DB.
Toute aide est très appréciée.
La solution
Je vais poster ma solution actuelle, qui a répondu à mes besoins, mais si quelqu'un voit une meilleure façon d'y arriver s'il vous plaît laissez-moi savoir!
Le SQL:
SELECT
P1.VENDORID
,LTRIM(RTRIM(GL1.ACTNUMBR_1)) + '-' + LTRIM(RTRIM(GL1.ACTNUMBR_2)) AS 'ACCOUNT'
,P2.DISTTYPE
,P2.DEBITAMT
,P2.CRDTAMNT
,V.[Vendor Name]
,P1.VCHRNMBR
,P1.DOCNUMBR
,P1.DOCDATE
,P1.BACHNUMB
,P1.TRXDSCRN
,P2.DOCTYPE
,C.ACTINDX
,P3.DOCNUMBR
FROM
PM30200 P1 WITH(NOLOCK)
INNER JOIN
PM30600 P2 ON P1.VCHRNMBR = P2.VCHRNMBR
INNER JOIN
GL00100 GL1 ON GL1.ACTINDX = P2.DSTINDX
INNER JOIN
Vendors V ON V.[Vendor ID] = P1.VENDORID
LEFT OUTER JOIN
PM00400 P3 ON P3.TRXSORCE = P1.TRXSORCE AND P3.CNTRLTYP = 1 AND P3.DOCTYPE = 6 AND P3.VENDORID = P1.VENDORID
LEFT OUTER JOIN
CM00100 C ON C.CHEKBKID = P3.CHEKBKID
J'ai aussi créé deux énumérations pour cartographier certaines des données:
public enum DISTTYPE
{
Cash = 1,
Pay = 2,
Avail = 3,
Taken = 4,
Fnchg = 5,
Purch = 6,
Trade = 7,
Misc = 8,
Freight = 9,
Taxes = 10,
Write = 11,
Other = 12,
Gst = 13,
Wh = 14,
Unit = 15,
Round = 16
}
public enum DOCTYPE
{
Invoice = 1,
[Description("Finance Charge")]
FinanceCharge = 2,
[Description("Miscellaneaous Charge")]
MiscellaneaousCharge = 3,
Return = 4,
[Description("Credit Memo")]
CreditMemo = 5,
[Description("Manual Checks")]
ManualChecks = 6
}