Jump to content
haztik

PHC Enterprise - Função CRIABOBI()

Recommended Posts

haztik

Boas.

O PHC Enterprise tem a seguinte função disponível no framework para criação de Dossiers. Usando a ajuda técnica apenas ficamos a saber quais os parâmetros que a função espera, mas não sei, por exemplo, qual a estrutura dos cursors.

Esta é a função e a lista de parâmetros:

CriaBoBi(Mndos, mbicursor, mbocursor, mbo2cursor, mlnaograva, mlpassano, mdataobra, mtemproj, mbi2cursor, mboecocursor)

Se souberem mais qualquer coisa sobre este assunto agradeço resposta.

Obrigado

Share this post


Link to post
Share on other sites
Mr. Z

Olá,

Tens um exemplo de como utilizar a função CriaBOBI() na comunidade PHC..

Cumprimentos,

Share this post


Link to post
Share on other sites
haztik

Infelizmente não tenho acesso ao site da comunidade... No entanto, agradeço a tua dica.

Share this post


Link to post
Share on other sites
DocasOrelhas

haztik, aqui vai um exemplo:


fecha("mbocursor")
fecha("mbo2cursor")
fecha("mbicursor")
fecha("mbicursor2")

* usar tabelas de dossiers
do dbfusebo
do dbfusebo2
do dbfusebi

* Utilizar a configuração do tipo de dossier nº1
do tsread with "",1

* criar os cursores mbocursor, mbo2cursor, mbicursor e mbicursor2 vazios
create cursor mbocursor (no n(10), estab n(3), memissao c(10),fref c(20))
u_sqlexec([select * from bo2 (nolock) where 1=0],[mbo2cursor])
u_sqlexec([select * from bi (nolock) where 1=0],[mbicursor])
u_sqlexec([select * from bi2 (nolock) where 1=0],[mbicursor2])

* limpar os cursores
select mbocursor
delete for .t.
append blank
select mbicursor
delete for .t.
select mbo2cursor
delete for .t.
select mbicursor2
delete for .t.

* preencher alguns campos do cabeçalho (mbocursor)
select mbocursor
replace mbocursor.no with 1
replace mbocursor.estab with 0
replace mbocursor.memissao with 'EURO'
replace mbocursor.fref with 'A001'

* criar uma linha no dossier com a referência 'A001'
select mbicursor
append blank
replace mbicursor.ref with 'A001'

* preenche o campo preço de venda (bi.edebito) da linha do artigo:
replace mbicursor.edebito with 1500

* preenche quantidade do artigo (bi.qtt):
replace mbicursor.qtt with 5

* preenche o campo Nº subtipo (bi.stipo) da linha do dossier:
replace mbicursor.stipo with 1

* totaliza a linha do artigo:
do u_bottdeb with 'mbicursor'

* cria o dossier 'Encomenda a Cliente' isto tendo em conta que a configuração de encomenda a cliente
* corresponde ao nº1 definido na tabela de configurações de dossiers internos (TS).
if not criabobi(1,'mbicursor','mbocursor','mbo2cursor',.f.,.f.,DATE(),.f.)
mensagem('Erro a gravar dossier','DIRECTA')
return
endif

* Verifica se existem eventos "Ao Introduzir" definidos para o ecrã de dossiers (SBO)
Do eventosexe with "SBO","INTRODUZIR"

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.