English version
German version
Spanish version
French version
Italian version
Portuguese / Brazilian version
Dutch version
Greek version
Russian version
Japanese version
Korean version
Simplified Chinese version
Traditional Chinese version
Hindi version
Czech version
Slovak version
Bulgarian version
 

Great Plains personalização? programação auto-aplicável em contas a receber

Software RSS Feed





Microsoft Great Plains é uma das três Microsoft Business Solutions meados de mercado ERP produtos: Great Plains, Solomon, Navision. Considerando que a Great Plains é agora muito bom candidato para a integração com POS aplicação, como o Microsoft Retail Management System ou RMS e Cliente relação Sistemas, como o Microsoft CRM? há necessidade comum em Great Plains personalizações e integrações, especialmente sobre o nível de MS SQL Server realiza consultas SQL e armazenados procedures.In este pequeno artigo iremos mostrar-lhe como criar auto-aplicável utilidade, quando você integrar grande número de operações de vendas e pagamentos. Iremos trabalhar com RM20101? Recebíveis Open File e RM20201? Recebíveis Aplicar Open File.Let eu ver código SQL: declare @ curpmtamt numérico (19,5) declare @ curinvamt numérico (19,5) declare @ curpmtnum varchar (20) declare @ curinvnum varchar (20) declare @ curinvtype intdeclare @ curpmttype intdeclare @ @ maxid intdeclare contador int - Criar uma tabela temporária tablecreate # temp ([ID] int identidade (1,1) chave primária, CUSTNMBR varchar (15), INVNUM varchar (20), INVTYPE int, PMTNUM varchar (20), PMTTYPE int, INVAMT numérico (19,5), PMTAMT numérico (19,5), AMTAPPLIED numérico (19,5)) criar índice IDX_INVNUM sobre # temp (INVNUM) criar índice IDX_PMTNUM sobre # temp (PMTNUM) - Inserir unapplied facturas e paymentsinsert em # temp (CUSTNMBR, INVNUM, INVTYPE, PMTNUM, PMTTYPE, INVAMT, PMTAMT, AMTAPPLIED) selectCUSTNMBR = a.CUSTNMBR, INVNUM = b.DOCNUMBR, INVTYPE = b.RMDTYPAL, PMTNUM = a.DOCNUMBR, PMTTYPE = a.RMDTYPAL, INVAMT = b.CURTRXAM, PMTAMT = a.CURTRXAM, AMTAPPLIED = 0from RM20101 ajoin RM20101 b em (a.CUSTNMBR = b.CUSTNMBR) aderir RM00101 c on (a.CUSTNMBR = c.CUSTNMBR) wherea.RMDTYPAL em (7, 8, 9) andb.RMDTYPAL em (1, 3) anda.CURTRXAM 0 andb.CURTRXAM 0order bya.custnmbr, b.DOCDATE, a.DOCDATE, a.DOCNUMBR, b.DOCNUMBR-- iterar através de cada recordselect @ maxid = max ([ID]) de tempselect # @ @ counter = 1while counter = @ curpmtamt) e (@ curpmtamt> 0) e (@ curinvamt> 0) - se o montante da factura é maior ou o mesmo que o pagamento amountbeginselect @ @ curinvamt = curinvamt - @ curpmtamt - factura montante restante - update com o montante que é aplicada ao actual factura de - o actual paymentupdate # tempsetAMTAPPLIED = @ curpmtamtwhere [ID] = @ counter - actualização com o valor da factura remainingupdate # tempsetINVAMT = @ @ curinvamtwhereINVNUM = curinvnum andINVTYPE = @ curinvtype - update com o valor do pagamento remainingupdate # tempsetPMTAMT = 0wherePMTNUM = @ curpmtnum andPMTTYPE = @ curpmttypeendelse if (@ curinvamt 0) e (@ curinvamt> 0) - se o montante da factura é menor ao pagamento amountbeginselect @ @ curpmtamt = curpmtamt - @ curinvamt - pagamento montante restante - update com o montante que é aplicado a partir da actual factura - a actual paymentupdate # tempsetAMTAPPLIED = @ curinvamtwhere [ID] = @ counter - actualização com o valor da factura remainingupdate # tempsetINVAMT = = 0whereINVNUM @ curinvnum andINVTYPE = @ curinvtype - update com o valor do pagamento remainingupdate # tempsetPMTAMT = curpmtamtwherePMTNUM = @ @ @ curpmtnum andPMTTYPE = curpmttypeend - vá para o próximo recordselect @ counter = @ counter + 1END - actualizar os RM Abrir tabela com a correta amountsupdateRM20101setCURTRXAM = b.INVAMTfromRM20101 # temp ajoin b em (a.DOCNUMBR = b.INVNUM e a.RMDTYPAL = b.INVTYPE) updateRM20101setCURTRXAM = b.PMTAMTfromRM20101 ajoin # temp b em (a.DOCNUMBR = b.PMTNUM e a.RMDTYPAL = b.PMTTYPE) -- - criar a RM Aplicar ou gravar a.AMTAPPLIED, APFRMAPLYAMT = APFRMAPLYAMT + a.AMTAPPLIED, ActualApplyToAmount = APFRMAPLYAMT + a.AMTAPPLIEDfrom # temp ajoin RM20101 b em (b.DOCNUMBR = a.INVNUM e b.RMDTYPAL = a.INVTYPE) aderir RM20101 c on (c.DOCNUMBR = a.PMTNUM e c.RMDTYPAL = a.PMTTYPE) aderir RM20201 d em (d.APFRDCTY = a.PMTTYPE andd.APFRDCNM = a.PMTNUM andd.APTODCTY = a.INVTYPE andd.APTODCNM = a.INVNUM) wherea.AMTAPPLIED 0insert dentro

Artigo Fonte: Messaggiamo.Com

Translation by Google Translator





Related:

» Seo Elite: New Seo Software!
» AntiSpywareBOT
» Reverse Mobile
» Error Nuker


Webmaster começa O Código do HTML
Adicionar este artigo para o seu site agora!

Webmaster enviar seus artigos
Nenhum registro necessário! Preencha o formulário e seu artigo está no Messaggiamo.Com Diretório!

Add to Google RSS Feed See our mobile site See our desktop site Follow us on Twitter!

Envie os seus artigos para Messaggiamo.Com Directory

Categorias


Copyright 2006-2011 Messaggiamo.Com - Mapa do Site - Privacy - Webmaster enviar seus artigos para Messaggiamo.Com Directory [0.01]
Hosting by webhosting24.com
Dedicated servers sponsored by server24.eu