Comment les identifiants uniques dans les modules Sugar Crm tels que le module Emails sont-ils générés?

StackOverflow https://stackoverflow.com/questions/9377473

  •  28-10-2019
  •  | 
  •  

Question

Besoin de savoir comment fonctionne la fonction "create_guid" et comment elle génère IDs pour différents modules, par exemplemodule Emails?

Était-ce utile?

La solution

Vous pouvez simplement l'appeler comme

$next_meeting->id = create_guid();

par exemple dans le hook logique.La fonction elle-même placée dans le fichier /include/utils.php.

Bien sûr, vous devez enregistrer le bean nouvellement généré avec

$next_meeting->save();

Autres conseils

Vous devrez l'appeler de la manière suivante:

$Module_Bean->new_with_id = true; 
$Module_Bean->id = create_guid();

Notez que si vous avez attribué votre propre ID à l'aide de la fonction create_guid, alors "new_with_id" doit également être défini.Vous pouvez trouver la fonction à ce chemin: include\utils.php

Voici le corps de la fonction:

function create_guid()
{
    $microTime = microtime();
    list($a_dec, $a_sec) = explode(' ', $microTime);

    $dec_hex = dechex($a_dec * 1000000);
    $sec_hex = dechex($a_sec);

    ensure_length($dec_hex, 5);
    ensure_length($sec_hex, 6);

    $guid = '';
    $guid .= $dec_hex;
    $guid .= create_guid_section(3);
    $guid .= '-';
    $guid .= create_guid_section(4);
    $guid .= '-';
    $guid .= create_guid_section(4);
    $guid .= '-';
    $guid .= create_guid_section(4);
    $guid .= '-';
    $guid .= $sec_hex;
    $guid .= create_guid_section(6);

    return $guid;
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top