Introdução

O gerenciamento eficiente de portos é fundamental para garantir a agilidade nas operações logísticas e administrativas. Neste tutorial, iremos explorar como implementar um sistema de gerenciamento de portos utilizando o framework Harbour. Abordaremos toda a arquitetura do sistema, integrações necessárias com bancos de dados como MySQL, e o uso do Visual FoxPro para relatórios e visualizações. Utilizando o Harbour, você poderá criar um aplicativo robusto que atende às várias necessidades do setor portuário, com um foco em otimização de processos e controle de operações. Este artigo se destina a desenvolvedores que buscam melhorar suas habilidades em Harbour e aprender como aplicar esse conhecimento em um contexto administrativo específico.

Etapas

  1. Configuração do Ambiente de Desenvolvimento

    Primeiramente, é necessário ter o Harbour instalado em sua máquina. O Harbour pode ser baixado a partir do site oficial. Para a conexão com o MySQL, você precisará também da biblioteca ‘libmysql.dll’. Depois de instalar o Harbour, verifique se tudo está funcionando corretamente usando o terminal.

    commands
    # Verificar instalação do Harbour
    hbmk2 -version

  2. Criação da Estrutura do Projeto

    Crie uma estrutura básica de pastas para o seu projeto. A estrutura recomendada é a seguinte: /porto_app/src para o código-fonte, /porto_app/db para scripts do banco de dados, e /porto_app/reports para relatórios gerados pelo Visual FoxPro.

    commands
    # Criar diretórios do projeto
    mkdir porto_app/src
    mkdir porto_app/db
    mkdir porto_app/reports

  3. Configuração do Banco de Dados MySQL

    Instale o MySQL em sua máquina, crie um banco de dados chamado ‘porto_db’ e uma tabela chamada ‘operacoes’ que irá armazenar as operações do porto. Utilize o seguinte script SQL para criar a tabela:

    operacoes.sql
    CREATE DATABASE porto_db;
    USE porto_db;
    CREATE TABLE operacoes (
        id INT AUTO_INCREMENT PRIMARY KEY,
        descricao VARCHAR(255) NOT NULL,
        data DATETIME NOT NULL,
        status VARCHAR(50) NOT NULL
    );

  4. Conexão com o Banco de Dados no Harbour

    Para se conectar ao banco de dados MySQL, utilize o seguinte código no seu arquivo fonte principal. Este código deve ser colocado em `main.prg`, onde você vai iniciar a conexão com o banco de dados.

    main.prg
    FUNCTION Main()
        LOCAL cConn
        cConn := 'DRIVER={MySQL ODBC 8.0 Driver};SERVER=localhost;DATABASE=porto_db;UID=root;PWD=senha;'
        hDb := SQLConnect(cConn)
        IF hDb
            ? 'Conectado ao banco de dados!'
        ELSE
            ? 'Erro na conexão!'
        RETURN
    END FUNCTION

  5. Implementação da Lógica para Gravação de Operações

    Agora, implemente a função para gravar uma nova operação no banco de dados. Use o seguinte código dentro do arquivo `main.prg`:

    main.prg
    FUNCTION GravarOperacao(cDescricao, dData, cStatus)
        LOCAL cSql
        cSql := 'INSERT INTO operacoes (descricao, data, status) VALUES ("' + cDescricao + '", "' + Format(dData, 'YYYY-MM-DD HH:MM:SS') + '", "' + cStatus + '")'
        SQLExec(hDb, cSql)
        RETURN;
    END FUNCTION

  6. Recuperação de Dados de Operações

    Implemente uma função para recuperar todas as operações do banco de dados. Adicione o seguinte código em `main.prg`:

    main.prg
    FUNCTION ListarOperacoes()
        LOCAL rResult
        rResult := SQLExec(hDb, 'SELECT * FROM operacoes')
        WHILE !EOF(rResult)
            ? rResult:descricao, rResult:data, rResult:status
            rResult := rResult + 1
        ENDWHILE
    END FUNCTION

  7. Geração de Relatórios com Visual FoxPro

    Para gerar relatórios utilizando o Visual FoxPro, crie um script que conecte ao banco de dados MySQL e gere um relatório das operações. O seguinte código pode ser usado:

    relatorio.prg
    SET HEADING OFF
    OPEN DATABASE porto_db
    =SQLCONNECT('localhost','root','senha')
    =SQLSELECT('SELECT * FROM operacoes')
    REPORT FORM operacoes.frx TO PRINTER

  8. Teste da Aplicação

    Execute o seu projeto para testar as funções de gravação, listagem e geração de relatórios. Certifique-se de que a conexão com o banco de dados está estabelecida corretamente e que os dados estão sendo gravados e recuperados sem problemas.

    commands
    # Compilar e executar o projeto
    hbmk2 main.prg
    ./main.exe

Conclusão

Neste tutorial, você aprendeu a implementar um sistema de gerenciamento de portos utilizando o framework Harbour. Passamos por diversas etapas, desde a configuração do ambiente, criação do banco de dados no MySQL, até a integração com o Visual FoxPro para geração de relatórios. Cada etapa foi projetada para otimizar as operações logísticas e administrativas respeitando a estrutura do Harbour. Com esse conhecimento, você está apto a desenvolver sistemas ainda mais complexos e adaptados para o gerenciamento eficaz de portos.

Hashtags

#Harbour #MySQL #Logística #GestãoPortuária #VisualFoxPro #DesenvolvimentoDeSoftware