Perguntas Campo BITMAP
- JRTchula
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 6
- Obrigados Recebidos: 0
4 anos 7 meses atrás #32833
por JRTchula
Campo BITMAP foi criado por JRTchula
Boa tarde.
Criei um campo do tipo Bimap na tabela SC5 do protheus, coloquei a imagem no campo, agora estou tentando passar a imagem para um a impressão em um relatório e não esta saindo nada, por favor alguém pode me ajudar.
Segue parte do código.
oPrinter:Say(nLin, 030,"Visto do Resp.:", oFont10T)
oPrinter:SayBitmap(200, 030, +ALLTRIM( SC5->C5_BITMAP), 100, 100)
Desde já agredesço
Criei um campo do tipo Bimap na tabela SC5 do protheus, coloquei a imagem no campo, agora estou tentando passar a imagem para um a impressão em um relatório e não esta saindo nada, por favor alguém pode me ajudar.
Segue parte do código.
oPrinter:Say(nLin, 030,"Visto do Resp.:", oFont10T)
oPrinter:SayBitmap(200, 030, +ALLTRIM( SC5->C5_BITMAP), 100, 100)
Desde já agredesço
Por favor Acessar ou Registrar para participar da conversa.
- admin
- Desconectado
- Administrador
Menos
Mais
- Postagens: 297
- Obrigados Recebidos: 21
4 anos 7 meses atrás #32834
por admin
Respondido por admin no tópico Campo BITMAP
Para imprimir estes campos é meio chato, segue uma função ai.
/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³fFoto ºAutor ³RH - Natie º Data ³ 02/18/02 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDesc. ³ º±±
±±º ³ º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºUso ³ AP6 º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
Static Function fFoto(nLinha)
Local aArea := GetArea()
Local cAlias := "PROTHEUS_REPOSIT"
Local cBmpPict := ""
Local cPath := GetSrvProfString("Startpath","")
Local lFile
Local oDlg8
Local oBmp
Local cSAlias := Alias()
Local nSRecno := RecNo()
Local nSOrdem := IndexOrd()
Default nLinha:= 380
/*
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ Carrega a Foto do Funcionario ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ*/
cBmpPict := Upper( AllTrim( QP1->QP1_BITMAP))
cPathPict := ( cPath + cBmpPict)
/*
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ Para impressao da foto eh necessario abrir um dialogo para ³
³ extracao da foto do repositorio.No entanto na impressao,nao |
³ ha a necessidade de visualiza-lo( o dialogo).Por esta razao ³
³ ele sera montado nestas coordenadas fora da Tela ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ*/
DEFINE MSDIALOG oDlg8 FROM -1000000,-4000000 TO -10000000,-8000000 PIXEL
//@ -10000000, -1000000000000 REPOSITORY oBmp SIZE -6000000000, -7000000000 OF oDlg8
@ -10000000, -1000000000000 REPOSITORY oBmp SIZE 400, 400 OF oDlg8
oBmp:lAutoSize := .T.
oBmp:lStretch := .T.
If _lRepDb
dbSelectArea(cAlias)
(cAlias)->( dbSeek(cBmpPict) )
EndIf
nLinha -= 15
// Verifica se a imagem existe no repositorio
If oBMP:ExistBMP(cBmpPict)
If !_lRepDb
oBmp:LoadBmp(cBmpPict)
EndIf
cFoto := ''
nLinha += 20
IF !Empty( cBmpPict := Upper( AllTrim( QP1->QP1_BITMAP ) ) )
lFile:=oBmp:Extract(cBmpPict, cPathPict)
If lFile
If File(cPathPict+".BMP")
oPrint:SayBitmap(nLinha,100,cPathPict + ".BMP",800,400)
cFoto := cPathPict + ".BMP"
ElseIf File(cPathPict+".JPG")
oPrint:SayBitmap(nLinha,100,cPathPict + ".JPG",800,400)
cFoto := cPathPict + ".JPG"
EndIf
EndIf
EndIf
EndIf
ACTIVATE MSDIALOG oDlg8 ON INIT (oBmp:lAutoSize := .T., oBmp:lStretch := .T., oDlg8:End())
dbselectarea(cSAlias)
dbsetorder(nSOrdem)
dbgoto(nSRecno)
If File(cFoto)
fErase( cFoto )
Endif
Return
/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³fFoto ºAutor ³RH - Natie º Data ³ 02/18/02 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDesc. ³ º±±
±±º ³ º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºUso ³ AP6 º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
Static Function fFoto(nLinha)
Local aArea := GetArea()
Local cAlias := "PROTHEUS_REPOSIT"
Local cBmpPict := ""
Local cPath := GetSrvProfString("Startpath","")
Local lFile
Local oDlg8
Local oBmp
Local cSAlias := Alias()
Local nSRecno := RecNo()
Local nSOrdem := IndexOrd()
Default nLinha:= 380
/*
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ Carrega a Foto do Funcionario ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ*/
cBmpPict := Upper( AllTrim( QP1->QP1_BITMAP))
cPathPict := ( cPath + cBmpPict)
/*
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ Para impressao da foto eh necessario abrir um dialogo para ³
³ extracao da foto do repositorio.No entanto na impressao,nao |
³ ha a necessidade de visualiza-lo( o dialogo).Por esta razao ³
³ ele sera montado nestas coordenadas fora da Tela ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ*/
DEFINE MSDIALOG oDlg8 FROM -1000000,-4000000 TO -10000000,-8000000 PIXEL
//@ -10000000, -1000000000000 REPOSITORY oBmp SIZE -6000000000, -7000000000 OF oDlg8
@ -10000000, -1000000000000 REPOSITORY oBmp SIZE 400, 400 OF oDlg8
oBmp:lAutoSize := .T.
oBmp:lStretch := .T.
If _lRepDb
dbSelectArea(cAlias)
(cAlias)->( dbSeek(cBmpPict) )
EndIf
nLinha -= 15
// Verifica se a imagem existe no repositorio
If oBMP:ExistBMP(cBmpPict)
If !_lRepDb
oBmp:LoadBmp(cBmpPict)
EndIf
cFoto := ''
nLinha += 20
IF !Empty( cBmpPict := Upper( AllTrim( QP1->QP1_BITMAP ) ) )
lFile:=oBmp:Extract(cBmpPict, cPathPict)
If lFile
If File(cPathPict+".BMP")
oPrint:SayBitmap(nLinha,100,cPathPict + ".BMP",800,400)
cFoto := cPathPict + ".BMP"
ElseIf File(cPathPict+".JPG")
oPrint:SayBitmap(nLinha,100,cPathPict + ".JPG",800,400)
cFoto := cPathPict + ".JPG"
EndIf
EndIf
EndIf
EndIf
ACTIVATE MSDIALOG oDlg8 ON INIT (oBmp:lAutoSize := .T., oBmp:lStretch := .T., oDlg8:End())
dbselectarea(cSAlias)
dbsetorder(nSOrdem)
dbgoto(nSRecno)
If File(cFoto)
fErase( cFoto )
Endif
Return
Os seguintes usuário(s) disseram Obrigado: JRTchula
Por favor Acessar ou Registrar para participar da conversa.
- JRTchula
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 6
- Obrigados Recebidos: 0
Tempo para a criação da página:0.131 segundos