Forum Replies Created

Page 4 of 4
  • Vikas Kumar

    Member
    January 5, 2017 at 1:13 pm in reply to: What is the difference between the ETL and ELT in Talend?

    Hi sushant,

    ETL

    Traditionally, ETL refers to the process of moving data from source systems into a data warehouse. The data is:

    Extracted – copied from the source system to a staging area
    Transformed – reformatted for the warehouse with business calculations applied
    Loaded – copied from the staging area into the warehouse
    How these steps are performed varies widely between warehouses based on requirements. Typically, however, data is temporarily stored in at least one set of staging tables as part of the process. The extract step might copy data to tables as quickly as possible in order to minimize time spent querying the source system, or the transform step might place data in tables that are copies of the warehouse tables for ease of loading (to enable partition swapping, for example), but the general process stays the same despite these variations.

    ELT

    ELT is a different way of looking at the tool approach to data movement. Instead of transforming the data before it’s written, ELT leverages the target system to do the transformation. The data is copied to the target and then transformed in place.

    ELT makes sense when the target is a high-end data engine, such as a data appliance, Hadoop cluster, or cloud installation to name three examples.

     

  • Vikas Kumar

    Member
    January 5, 2017 at 1:09 pm in reply to: Is there any other tool similar to Talend available ?

    Hi Sushant ,

    yes there are many tools similar to talend like

    1.JitterBit

    2.Pentaho

    3.Skyvia

    4.Apatar

    5.ql.io

     

  • Hi Sushant

    Check out the Link for setup

    https://trailhead.salesforce.com/en/lightning_connect/lightning_connect_setup

    Hope it may help

  • Hi Mohit,

    To find out if a particular user has Edit access to a record, use the UserRecordAccess object. This object is available in API version 24.0 and later. You can use SOQL to query this object to find out if the user has edit access to the record in question.

    SELECT RecordId, HasEditAccess FROM UserRecordAccess WHERE UserId = [single ID] AND RecordId = [single ID]

    If you want to check a batch of records you can use

    SELECT RecordId FROM UserRecordAccess WHERE UserId=:UserInfo.getUserId() AND HasReadAccess = true AND RecordId IN :allRecordIds LIMIT 200

    Hope it may helps

  • Hi Satyakam

    Thanks for the Answer

  • Hi Ajit,

    Thanks for the Answer

  • Vikas Kumar

    Member
    January 4, 2017 at 5:36 am in reply to: Relation Between OpportunityLineitem & Pricebook entry

    Hi Satyakam,

    thanks for the answer

  • Vikas Kumar

    Member
    January 4, 2017 at 5:34 am in reply to: Dynamic Popup on salesforce visualforce page

    Hi Satyakam,

    thanks for the Link

  • Hi Satyakam,

    Thanks for the answer

  • Hi Pranav ,

    Thanks for describing the difference between database.query() and database.getQueryLocator()

    • This reply was modified 6 years, 3 months ago by  Forcetalks.
  • Vikas Kumar

    Member
    December 21, 2016 at 2:23 pm in reply to: Difference Between Change Sets And Apache Ant Migration

    Hi Pranav,

    Thanks for the Answer 🙂

     

  • Vikas Kumar

    Member
    December 8, 2016 at 5:25 pm in reply to: Order of execution in Salesforce Professional edition

    Hi kumar

    Yes it differs, if the edition is Professional Edition. PE doesn't have Triggers.

    UE- Unilimited Edition EE - Enterprise Edition

    Old record loaded from database (or initialized for new inserts)
    New record values overwrite old values
    System Validation Rules (If inserting Opportunity Products, Custom Validation Rules will also fire in addition to System Validation Rules)
    All Apex before triggers (EE / UE only)
    Custom Validation Rules
    Record saved to database (but not committed)
    Record reloaded from database
    All Apex after triggers (EE / UE only)
    Assignment rules
    Auto-response rules
    Workflow rules
    Processes
    Escalation rules
    Parent Rollup Summary Formula value updated (if present)
    Database commit
    Post-commit logic (sending email

  • Vikas Kumar

    Member
    December 8, 2016 at 5:22 pm in reply to: Difference between Trigger.New and Trigger.NewMap in Salesforce?

    Hi Sushant

    Trigger.new return the ordered list whereas trigger.newmap returns a map which is unordered

    In other ways

    Trigger.new
    Returns a list of the new versions of the sObject records. Note that this sObject list is only available in insert and update triggers, and the records can only be modified in before triggers.

    Trigger.NewMap
    A map of IDs to the new versions of the sObject records, this map is only available in before update, after insert, and after update triggers.

    hope it may help

    • This reply was modified 5 years, 3 months ago by  Forcetalks.
  • Vikas Kumar

    Member
    December 7, 2016 at 6:53 pm in reply to: When to use Triggers and When to use Workflows in Salesforce?

    Hi sushant,

    Triggers fire before workflows and

    It is always suggestable to use the SF functionality in the first hand if it serves all our purposes. If the requirement or the functionality needs to handle some logic that the workflow rules cannot achieve, only then we should go for writing a custom trigger.

  • hi sushant

    there will be some correction in your code you need to specify your sobject  because it create some ambiguity becz

    a.name can be either auto number or string so its create a situation which throws error. so if you wanted to update some fields of your object using batch you can call another batch class in ur class.

    you can do something like this

    global class SearchAndReplace implements Database.Batchable<sobject>{
    global String Query;
    global List<id>allObjIds ;
    global SearchAndReplace(List<id>allObjectIds){
    allObjIds=allObjectIds;
    }
    global Database.QueryLocator Start(Database.BatchableContext BC){
    query='SELECT Id,Name FROM Account WHERE Id in:allObjIds';
    return Database.getQueryLocator(query);
    }
    global void execute (Database.BatchableContext BC,List<Account>scope){
    for(Account obj:scope){
    obj.Name='Algoworks';
    }
    update scope;
    }
    global void finish (Database.BatchableContext BC){
    SearchAndReplaceContact objc = new SearchAndReplaceContact(allObjIds);

    }

    another class get called inside above class

    global class SearchAndReplaceContact implements Database.Batchable<sobject> {
    global String Query;
    global List<id>allObjIds ;
    global SearchAndReplaceContact(List<id>allObjectIds){
    allObjIds=allObjectIds;
    }
    global Database.QueryLocator Start(Database.BatchableContext BC){
    query='SELECT Id,Name FROM Contact WHERE Id in:allObjIds';
    return Database.getQueryLocator(query);
    }
    global void execute (Database.BatchableContext BC,List<Contact>scope){
    for(Contact obj:scope){
    obj.lastname='Algoworks';
    }
    update scope;
    }
    global void finish (Database.BatchableContext BC){
    }

    }

     

     

  • Vikas Kumar

    Member
    December 7, 2016 at 12:13 pm in reply to: How to delete the User from Salesforce?

    Thanks Shekhar Gadewar!!

  • Hi Sushant

    This is the modified version of your code it works fine . you need to change sObject to Sobject ur code will work fine

    global class TestBatch implements
    Database.Batchable<Sobject>, Database.Stateful {
    list<id> useridlist = new list<id>();
    global TestBatch(list<id> idforlist){

    useridlist=idforlist;
    }

    global Database.QueryLocator start(Database.BatchableContext bc) {
    return Database.getQueryLocator('SELECT id,name FROM Sobject WHERE id IN :useridlist' );
    }

    global void execute(Database.BatchableContext bc, List<Sobject> scope){

    for(Sobject a: scope)
    {
    a.put( 'name','Algo');
    }
    update scope;
    }

    global void finish(Database.BatchableContext bc){

    }

    }

    Hope it Helps

  • Thanks Pranav !!

Page 4 of 4