PHPackages                             vincentchalamon/nav-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. vincentchalamon/nav-bundle

AbandonedArchivedSymfony-bundle[API Development](/categories/api)

vincentchalamon/nav-bundle
==========================

Symfony bundle for Microsoft Dynamics NAV

v2.0.0(4y ago)48171[1 issues](https://github.com/vincentchalamon/nav-bundle/issues)MITPHPPHP &gt;=7.2

Since Mar 6Pushed 3y ago1 watchersCompare

[ Source](https://github.com/vincentchalamon/nav-bundle)[ Packagist](https://packagist.org/packages/vincentchalamon/nav-bundle)[ Docs](https://github.com/vincentchalamon/nav-bundle)[ GitHub Sponsors](https://github.com/vincentchalamon)[ RSS](/packages/vincentchalamon-nav-bundle/feed)WikiDiscussions main Synced 5d ago

READMEChangelog (9)Dependencies (26)Versions (11)Used By (0)

NavBundle
=========

[](#navbundle)

**This bundle is not supported anymore!**

[![GitHub CI](https://github.com/vincentchalamon/nav-bundle/workflows/CI/badge.svg)](https://github.com/vincentchalamon/nav-bundle/actions?query=workflow%3ACI)[![Packagist Version](https://camo.githubusercontent.com/b50cb7fe89f2fd7c49f650f0f003dfcaf511082c428e3abb76e15e4ed4aaf5cf/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f76696e63656e746368616c616d6f6e2f6e61762d62756e646c652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/vincentchalamon/nav-bundle)[![Software license](https://camo.githubusercontent.com/898c4003baba5412356fc57c8b00a66fa62cda77606b09fb3ce9ce0b6b838e62/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f76696e63656e746368616c616d6f6e2f6e61762d62756e646c652e7376673f7374796c653d666c61742d737175617265)](https://github.com/vincentchalamon/nav-bundle/blob/main/LICENSE)[![Coverage Status](https://camo.githubusercontent.com/5483bd2bfa2293fea5b5305c02bcd6647a87b60c0f6e2cf0eb0dfdea741b2569/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f6769746875622f76696e63656e746368616c616d6f6e2f6e61762d62756e646c652f62616467652e7376673f6272616e63683d6d61696e)](https://coveralls.io/github/vincentchalamon/nav-bundle?branch=main)

This Symfony Bundle is used to map objects with a Microsoft Dynamics NAV service.

Requirements
------------

[](#requirements)

- PHP ^7.3
- PHP extensions: curl, dom, soap

Installation
------------

[](#installation)

```
composer req vincentchalamon/nav-bundle
```

Configuration
-------------

[](#configuration)

```
nav:
    url: '%env(NAV_URL)%' # i.e.: https://user:pass@www.example.com/NAV_WS/
    paths:
        App:
            path: '%kernel.project_dir%/src/Entity'
            namespace: 'App/Entity'
```

Advanced configuration
----------------------

[](#advanced-configuration)

```
nav:
    enable_profiler: '%kernel.debug%'
    foo:
        wsdl: '%env(NAV_WSDL)%'
        connection:
            class: App\Connection\CustomConnectionClass
            username: '%env(NAV_USERNAME)%'
            password: '%env(NAV_PASSWORD)%'
        paths:
            Foo:
                path: '%kernel.project_dir%/src/Entity/Foo'
                namespace: 'App/Entity/Foo'
        entity_manager_class: App\EntityManager\CustomEntityManager
        driver: nav.class_metadata.driver.annotation
        name_converter: nav.serializer.name_converter.camel_case_to_nav
        soap_options:
            soap_version: 1
            connection_timeout: 120
            exception: '%kernel.debug%'
            trace: '%kernel.debug%'
    bar:
        wsdl: '%env(ANOTHER_WSDL)%'
        connection:
            class: App\Connection\CustomConnectionClass
            username: '%env(ANOTHER_USERNAME)%'
            password: '%env(ANOTHER_PASSWORD)%'
        paths:
            Bar:
                path: '%kernel.project_dir%/src/Entity/Bar'
                namespace: 'App/Entity/Bar'
        entity_manager_class: App\EntityManager\CustomEntityManager
        driver: app.class_metadata.custom
        name_converter: nav.serializer.name_converter.camel_case_to_nav
        soap_options:
            soap_version: 1
            connection_timeout: 120
            exception: '%kernel.debug%'
            trace: '%kernel.debug%'
```

Usage
-----

[](#usage)

```
namespace App\Entity;

use NavBundle\Annotation as Nav;

/**
 * @Nav\Entity(namespace="Contact")
 */
final class Contact
{
    /**
     * @Nav\Column
     * @Nav\Key
     */
    public $key;

    /**
     * @Nav\Column
     * @Nav\No
     */
    public $no;

    /**
     * @Nav\Column(name="Custom_Email", nullable=true)
     */
    public $email;

    /**
     * @Nav\Column(type="date", nullable=true)
     */
    public $date;

    /**
     * @Nav\ManyToOne(targetClass=Foo::class)
     */
    public $foo;
}
```

Read
----

[](#read)

```
/** @var \NavBundle\RegistryInterface $registry */
$registry = $container->get('nav.registry');

$manager = $registry->getManagerForClass(Contact::class);
$repository = $manager->getRepository(Contact::class);

// Find entity by primary key
$repository->find($no);

// Find collection by a set of criteria
$repository->findBy(['foo' => 'bar']);

// Find entity by a set of criteria
$repository->findOneBy(['foo' => 'bar']);

// Find all
$repository->findAll();
```

Write/delete
------------

[](#writedelete)

```
/** @var \NavBundle\RegistryInterface $registry */
$registry = $container->get('nav.registry');

$manager = $registry->getManagerForClass(Contact::class);

// Create/Update
$manager->persist($object);

// Delete
$manager->remove($object);

// Flush
$manager->flush();

// It's also possible to flush an object or an array of objects
$manager->flush($object);
```

Profiler
--------

[](#profiler)

[![Profiler](doc/profiler.png)](doc/profiler.png)

Code of conduct
---------------

[](#code-of-conduct)

This bundle is ruled by a [code a conduct](/.github/CODE_OF_CONDUCT.md).

Contributing
------------

[](#contributing)

Please have a look to [the contributing guide](/.github/CONTRIBUTING.md).

Backward Compatibility promise
------------------------------

[](#backward-compatibility-promise)

This bundle follows the same Backward Compatibility promise as the Symfony framework:

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance15

Infrequent updates — may be unmaintained

Popularity18

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity57

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~73 days

Recently: every ~120 days

Total

10

Last Release

1599d ago

Major Versions

1.0.x-dev → v2.0.02021-12-29

PHP version history (2 changes)v1.0.0-beta.1PHP ^7.2

v1.0.6PHP &gt;=7.2

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/407859?v=4)[Vincent](/maintainers/vincentchalamon)[@vincentchalamon](https://github.com/vincentchalamon)

---

Top Contributors

[![vincentchalamon](https://avatars.githubusercontent.com/u/407859?v=4)](https://github.com/vincentchalamon "vincentchalamon (92 commits)")

---

Tags

symfonySymfony Bundlemicrosoft dynamic navnavision

### Embed Badge

![Health badge](/badges/vincentchalamon-nav-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/vincentchalamon-nav-bundle/health.svg)](https://phpackages.com/packages/vincentchalamon-nav-bundle)
```

###  Alternatives

[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.4k5.6M651](/packages/sylius-sylius)[shopware/platform

The Shopware e-commerce core

3.3k1.5M3](/packages/shopware-platform)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.3M152](/packages/sulu-sulu)[ec-cube/ec-cube

EC-CUBE EC open platform.

78527.0k1](/packages/ec-cube-ec-cube)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

595.2M386](/packages/shopware-core)[prestashop/prestashop

PrestaShop is an Open Source e-commerce platform, committed to providing the best shopping cart experience for both merchants and customers.

9.0k15.4k](/packages/prestashop-prestashop)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
