Descrição:

Classe responsável pela manipulação do repositório de imagens.



Métodos:


New

Descrição:
Método para instanciar a classe (construtor)


Sintaxe:

FWBmpRep():New() → Objeto FWBmpRep


OpenRepository

Descrição:
Método responsável por abrir o repositório de imagens


Sintaxe:

FWBmpRep():OpenRepository() → lRet


Retorno:
lRet → Indica se o repositório foi aberto


CloseRepository

Descrição:
Método responsável por fechar o repositório de imagens


Sintaxe:

FWBmpRep():CloseRepository()


Pack

Descrição:
Método responsável por efetuar o pack do repositório de imagens


Sintaxe:

FWBmpRep():Pack()


Observação:
Caso o repositório esteja no banco de dados, esse método não surte efeito.


RecordCount

Descrição:
Método responsável por retornar a quantidade de itens presentes no repositório de imagens


Sintaxe:

FWBmpRep():RecordCount() → nRecs


Retorno:
nRecs → Indica a quantidade de registros no repositório de imagens


ExistBmp

Descrição:
Método responsável por verificar a existência de uma imagem no repositório de imagens


Sintaxe:

FWBmpRep():ExistBmp( <cEntry> ) → lRet


Parâmetros

NomeTipoDescriçãoObrigatório
cEntryCaractereNome da imagem a ser pesquisadaX


Retorno:
lRet → Indica se a imagem pesquisada existe no repositório de imagens


DeleteBmp

Descrição:
Método responsável por efetuar a exclusão de uma imagem presente no repositório de imagens


Sintaxe:

FWBmpRep():DeleteBmp( <cEntry> )


Parâmetros

NomeTipoDescriçãoObrigatórioReferência
cEntryCaractereNome da imagem a ser excluídaX

Extract

Descrição:
Método responsável por extrair uma imagem do repositório de imagens


Sintaxe:

FWBmpRep():Extract( <cEntry> , <cFile> ) → lRet


Parâmetros

NomeTipoDescriçãoObrigatórioReferência
cEntryCaractereNome da imagem a ser extraídaX
cFileCaractereNome do arquivo de destino, incluindo o caminhoX


Retorno:
lRet → Indica sucesso na extração da imagem


InsertBmp

Descrição:
Método responsável pela inserção de imagens no repositório de imagens


Sintaxe:

FWBmpRep():InsertBmp( <cFile> , <cEntry> , <lIncluiu>) → cEntry


Parâmetros

NomeTipoDescriçãoObrigatórioReferência
cFileCaractereNome do arquivo de origem, incluindo o caminhoX
cEntryCaractereNome da imagem que será inclusa

lIncluiuLógicoIndica se a inclusão foi bem sucedida
X


Retorno:
cEntry → Nome da imagem que foi inclusa



Exemplo de utilização:


#include "protheus.ch"

#define C_GRUPO  "99"
#define C_FILIAL "01"

//-------------------------------------------------------------------
/*{Protheus.doc} imgReposit
Exemplo de utilização da classe FWBmpRep, classe responsável pela
manipulação do repositório de imagens

@author Daniel Mendes
@since 12/08/2020
@version 1.0
*/
//-------------------------------------------------------------------
user function imgReposit()
local oImgRepo as object
local lInluiu as logical
local cEntry as char

RpcSetEnv(C_GRUPO, C_FILIAL)

oImgRepo := FWBmpRep():New()

if oImgRepo:OpenRepository()
    lInluiu := .F.

    ConOut("Quantidade de registros: ", oImgRepo:RecordCount())

    if oImgRepo:ExistBmp("xisto")
        oImgRepo:DeleteBmp("xisto")
    endif

    cEntry := oImgRepo:InsertBmp("xisto.jpg" ,/*cEntry*/, @lInluiu)

    if lInluiu
        FErase("xisto.jpg")
        ConOut("Imagem " + cEntry + " inclusa")

        if oImgRepo:Extract(cEntry, "xisto.jpg")
            ConOut("Imagem " + cEntry + " recuperada")
        else
            ConErr("Erro ao recuperar a imagem " + cEntry)
        endif
    else
        ConErr("Erro ao incluir a imagem xisto.jpg")
    endif

    oImgRepo:CloseRepository()
endif

FreeObj(oImgRepo)

RpcClearEnv()

return