display data stored in one module in another module

I have address field which is stored in accounts module while creating the account. Here what I want is this address field should reflect in all modules can any one clearly explain me about this query .thanks in advance.
  • No worries mate.steps to follow:
    1: Add address field and account relate field in quote and contract modules. 
    2: Declare fields definition in editviewdef, detailviewdef of quote and contract module.
    3: If you don't want to add field in editview than display params is not solution.
    4: If you want to create new quote and contract records on creation of each account than you need to add before_save logic hook in account module.
    5: What you want to do step 3 or step 4?
  • Than step 4 is solution or there can be subpanels of quote/contract under account so that when you relate any quote/contract with account than account's address fields get populated into quote/contract record.
    I will suggest to add address/account field field in edit and detail of quote/contract and use display params, Its easier way for you.
  • whether i should add these fields in custom/modules/metadata/editviewdefs.php or modules/metadata/editviewdefs.php 

  • Add in custom/modules/... because its upgrade safe way.
  • i have already a code present in custom/modules/Quotes/metadata/detailviewdefs.php i.e

    array (     0 => 
              array (
                'name' => 'billing_address_street',
               'comment' => 'The street address used for billing address',
                'label' => 'LBL_BILLING_ADDRESS_STREET',
              ),
            ),
    what should i modify in this 
  • Dear dear dear friend In address field we don't only have street field add all fields man like this.
    -----------------------editview-------------------
               array (
                'name' => 'billing_address_street',
                'hideLabel' => true,
                'type' => 'address',
                'displayParams' => 
                array (
                  'key' => 'billing',
                  'rows' => 2,
                  'cols' => 30,
                  'maxlength' => 150,
                ),
              ),

              array (
                'name' => 'shipping_address_street',
                'hideLabel' => true,
                'type' => 'address',
                'displayParams' => 
                array (
                  'key' => 'shipping',
                  'copy' => 'billing',
                  'rows' => 2,
                  'cols' => 30,
                  'maxlength' => 150,
                ),
              ),
        -----------------------------detailview----------------------
        
        
                  array (
                'name' => 'billing_address_street',
                'label' => 'LBL_BILLING_ADDRESS',
                'type' => 'address',
                'displayParams' => 
                array (
                  'key' => 'billing',
                ),
              ),

              array (
                'name' => 'shipping_address_street',
                'label' => 'LBL_SHIPPING_ADDRESS',
                'type' => 'address',
                'displayParams' => 
                array (
                  'key' => 'shipping',
                ),
              ),
        
    After adding this check address field is appearing in quote/contract module as same as present in account's edit and detail view.
    See accounts edit detail view in sugar an confirm same appearing in quote/contract module.   
  • Dear dear dear friend In address field we don't only have street field add all fields man like this.
    -----------------------editview-------------------
               array (
                'name' => 'billing_address_street',
                'hideLabel' => true,
                'type' => 'address',
                'displayParams' => 
                array (
                  'key' => 'billing',
                  'rows' => 2,
                  'cols' => 30,
                  'maxlength' => 150,
                ),
              ),

              array (
                'name' => 'shipping_address_street',
                'hideLabel' => true,
                'type' => 'address',
                'displayParams' => 
                array (
                  'key' => 'shipping',
                  'copy' => 'billing',
                  'rows' => 2,
                  'cols' => 30,
                  'maxlength' => 150,
                ),
              ),
        -----------------------------detailview----------------------
        
        
                  array (
                'name' => 'billing_address_street',
                'label' => 'LBL_BILLING_ADDRESS',
                'type' => 'address',
                'displayParams' => 
                array (
                  'key' => 'billing',
                ),
              ),

              array (
                'name' => 'shipping_address_street',
                'label' => 'LBL_SHIPPING_ADDRESS',
                'type' => 'address',
                'displayParams' => 
                array (
                  'key' => 'shipping',
                ),
              ),
        
    After adding this check address field is appearing in quote/contract module as same as present in account's edit and detail view.
    See accounts edit detail view in sugar an confirm same appearing in quote/contract module.   
  • yes field is appearing how to get stored values for this address from the accounts to quote module
  • Declare account relate field in edit view of quote/contract module like in 
    modules/Contacts/metadata/editviewdefs.php

    Like this

     array (  'name' => 'account_name',
      'displayParams' => 
      array (
        'key' => 'billing',
        'copy' => 'primary',
        'billingKey' => 'primary',
      ),
       ),

    When you will select account from relate field in edit view of contract and quote it will populate address fields of your contract/quote from selected account.
    same like we select account in contact editview and it fills address fields from selected account.