Module Codes Barre (développeur)

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search
Barcode
Numéro/ID du module 55
Doc utilisateur du module Module Codes Barre
Doc développeur du module Cette page





Fonction

Gestion des codes barre. Ce module permet d'ajouter la possibilité de saisir une valeur de code barre sur les produits ou les tiers.

Permissions

  • ->barcode->lire
  • ->barcode->creer
  • ->barcode->supprimer

Tables SQL

Aucune. Le code barre est en général un code stocké au niveau de la propriété (dans la table Produit par exemple)

Code PHP

Pour générer une image d'un code barre ou d'un QR code, vous pouvez utiliser la portion de code suivant:

	$code = 'string_to_convert_into_image';
	$generator = 'tcpdfbarcode';  // Can be 'tcpdfbarcode', 'phpbarcode', a value provided by an external module, ...
	$encoding = 'QRCODE';  // Can be 'QRCODE', 'EAN13', ...
	
	$dirbarcode = array_merge(array("/core/modules/barcode/doc/"), $conf->modules_parts['barcode']);

	$result = 0;
	foreach ($dirbarcode as $reldir) {
		$dir = dol_buildpath($reldir, 0);
		$newdir = dol_osencode($dir);

		// Check if directory exists (we do not use dol_is_dir to avoid loading files.lib.php)
		if (!is_dir($newdir)) {
			continue;
		}

		$result = @include_once $newdir.$generator.'.modules.php';
		if ($result) {
			break;
		}
	}

	// Load barcode class
	$classname = "mod".ucfirst($generator);
	$module = new $classname($db);
	if ($module->encodingIsSupported($encoding)) {
		$result = $module->writeBarCode($code, $encoding, $readable);
	}
    // image is into file $conf->barcode->dir_temp . '/barcode_' . $code . '_' . $encoding . '.png';