function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
Maria FranklinMaria Franklin 

help with Apex Conditional IF statement to auto-populate field values.

Hello, 
I have the following conditional statement and it is not autopopulating the State field values that I need. What am I doing wrong?

Your help is greatly appreciated!


-- (NOTE: California = 127; Colorado = 128, Texas = 209) -- 

Snippet:


    if(selectedQuote.get(0).State__c == 'California'){
      string stateId = '127';
    if(selectedQuote.get(0).State__c == 'Colorado'){
       stateId = '128';
      } else (selectedQuote.get(0).State__c == 'Texas'){
       stateId = '209';
         }

 hope+='<FieldWithValue>'+
  +'<FieldId xmlns="http://filehold.com/librarymanager/scanningmanager/">54</FieldId>'+
  +'<FieldValue xsi:type="ArrayOfInt" xmlns="http://filehold.com/librarymanager/scanningmanager/"><int xmlns="">'+stateId+'</int></FieldValue>'+
 +'</FieldWithValue>';
                   }

AnkaiahAnkaiah (Salesforce Developers) 
Hi Maria,

try withbelow code.
if(selectedQuote.get(0).State__c == 'California'){
      string stateId = '127';
	  }
    if(selectedQuote.get(0).State__c == 'Colorado'){
       stateId = '128';
      } 
	  If(selectedQuote.get(0).State__c == 'Texas'){
       stateId = '209';
         }

If this helps, Please mark it as best answer.

Thanks!!​​​​​​​
Maria FranklinMaria Franklin

Hi Ankaiah, 

Unfortunately, that did not work. Below is the full Apex Class. 

(Note: the code requires specific Metadata Values be set up under our Custom Settings, which have been added)

I have obfuscated the authentication details. 

 

//Class for handling Filehold Uploading. Uses Filehold Settings to determine Filehold Base URL for API calls.
public class WPFileHold{
    public String openUrl {get; set;}
    public Boolean auth {get; set;}
    public String Username {get; set;}
    public String Password {get; set;}
    public String Instance {get; set;}
    public String error {get; set;}
    public String fileholdDev {get; set;}
    public String fileholdProd {get; set;}
    public String fileholdUrl {get; set;}
    public Large_Group_Quote_Request__c q {get; set;}
    
    public WPFileHold(ApexPages.StandardController controller){
        this.auth = false;
        this.instance = 'XYZ';
        this.fileholdDev = ‘1234’;
        this.fileholdProd = ‘5678’;
        this.fileholdUrl = 'https://fakeurl.com’;
        
        map<String, Filehold_Settings__c> fileholdSettings = Filehold_Settings__c.getAll();
        for (String s : fileholdSettings.keySet()){
            if (fileholdSettings.get(s).Filehold_Dev_ID__c != null){
                this.fileholdDev = fileholdSettings.get(s).Filehold_Dev_ID__c; 
            }
            if (fileholdSettings.get(s).Filehold_Prod_ID__c != null){
                this.fileholdProd = fileholdSettings.get(s).Filehold_Prod_ID__c; 
            }
            if (fileholdSettings.get(s).Filehold_URL__c != null){
                this.fileholdUrl = fileholdSettings.get(s).Filehold_URL__c; 
            }
        }
        this.q = (Large_Group_Quote_Request__c)controller.getRecord();
        if (Cache.Session.contains('local.Filehold.counter')) {
            fileholdComUserrolemanagerSessionmana.SessionManagerSoap s = new fileholdComUserrolemanagerSessionmana.SessionManagerSoap();
            if(s.IsSessionValid(getCount(),true)){
                this.auth = true;
            }
        }
        this.openUrl = '';
    }
    public String getCount() {
        return (String)Cache.Session.get('local.Filehold.counter');
    }
    
    public void increaseCount(){
        if(this.Username != null && this.Password != null && this.Instance != null){
            try{
                fileholdComUserrolemanagerSessionmana.SessionManagerSoap s = new fileholdComUserrolemanagerSessionmana.SessionManagerSoap();
                
                String cookie;
                if(this.Instance == 'Dev'){
                    cookie = s.StartSessionForDomainUser(username,password,this.fileholdDev,'CustomClient');
                }
                else if (this.Instance == 'Local'){
                    cookie = s.StartSession(username,password,'CustomClient');
                }
                else{
                    cookie = s.StartSessionForDomainUser(username,password,this.fileholdWarner,'CustomClient');
                }
                if(cookie != null && s.IsSessionValid(cookie,true)){
                    this.auth = true;
                    Cache.Session.put('local.Filehold.counter', cookie);
                }
                else{
                    this.error = 'Invalid Username or Password';
                }
            } catch(exception e){
                this.error = 'Invalid Username or Password';
            }
        }
        else{
            this.error = 'Invalid Username or Password';
        }
    }

    public void WPFileHoldAutoFile() {
        if (Cache.Session.contains('local.Filehold.counter')) {
            fileholdComUserrolemanagerSessionmana.SessionManagerSoap s = new fileholdComUserrolemanagerSessionmana.SessionManagerSoap();
            String cookie = getCount();
            if(s.IsSessionValid(cookie,true)){
                list<Large_Group_Quote_Request__c> selectedQuote = [select Kentico_GUID__c, Group_Name_Text__c, Broker_ID__r.Name,  Sales_Executive__c, Effective_Date__c, State__c from Large_Group_Quote_Request__c where id = :this.q.id];
                if(selectedQuote.size() > 0){
                    fileholdComLibrarymanagerScanningmana.ScanningSetting d = new fileholdComLibrarymanagerScanningmana.ScanningSetting();
                    d.key = 'AddDocumentWizard_ReturnPage';
                    d.Value = 'AddDocumentWizardForm.aspx';
                    
                    fileholdComLibrarymanagerScanningmana.ScanningSetting c = new fileholdComLibrarymanagerScanningmana.ScanningSetting();
                    c.key = 'DocumentSchemaId';
                    c.Value = '13';
             
                    fileholdComLibrarymanagerScanningmana.ScanningSetting b = new fileholdComLibrarymanagerScanningmana.ScanningSetting();
                    b.key = 'MetadataValues';
                    string hope = '<?xml version="1.0"?>'+
                    +'<ArrayOfFieldWithValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">';
                    
                    if(selectedQuote.get(0).Kentico_GUID__c != null){
                      hope+='<FieldWithValue>'+
                        +'<FieldId xmlns="http://filehold.com/librarymanager/scanningmanager/">56</FieldId>'+
                        +'<FieldValue xsi:type="xsd:string" xmlns="http://filehold.com/librarymanager/scanningmanager/">'+selectedQuote.get(0).Kentico_GUID__c+'</FieldValue>'+
                      +'</FieldWithValue>';
                    }
                    
                    if(selectedQuote.get(0).Group_Name_Text__c != null){
                      hope+='<FieldWithValue>'+
                        +'<FieldId xmlns="http://filehold.com/librarymanager/scanningmanager/">23</FieldId>'+
                        +'<FieldValue xsi:type="xsd:string" xmlns="http://filehold.com/librarymanager/scanningmanager/">'+selectedQuote.get(0).Group_Name_Text__c+'</FieldValue>'+
                      +'</FieldWithValue>';
                    }
                    
                    if(selectedQuote.get(0).Broker_ID__r.Name != null){
                      hope+='<FieldWithValue>'+
                        +'<FieldId xmlns="http://filehold.com/librarymanager/scanningmanager/">6</FieldId>'+
                        +'<FieldValue xsi:type="xsd:string" xmlns="http://filehold.com/librarymanager/scanningmanager/">'+selectedQuote.get(0).Broker_ID__r.Name+'</FieldValue>'+
                      +'</FieldWithValue>';
                    }
                 
                    if(selectedQuote.get(0).Effective_Date__c != null){             
                      hope+='<FieldWithValue>'+
                        +'<FieldId xmlns="http://filehold.com/librarymanager/scanningmanager/">20</FieldId>'+
                        +'<FieldValue xsi:type="xsd:string" xmlns="http://filehold.com/librarymanager/scanningmanager/">'+selectedQuote.get(0).Effective_Date__c.format()+'</FieldValue>'+
                      +'</FieldWithValue>';
                    }

                    if(selectedQuote.get(0).Sales_Executive__c != null){
                      hope+='<FieldWithValue>'+
                        +'<FieldId xmlns="http://filehold.com/librarymanager/scanningmanager/">38</FieldId>'+
                        +'<FieldValue xsi:type="xsd:string" xmlns="http://filehold.com/librarymanager/scanningmanager/">'+selectedQuote.get(0).Sales_Executive__c+'</FieldValue>'+
                      +'</FieldWithValue>';
                    }
                     if(selectedQuote.get(0).State__c == 'California'){
                     string stateId = '127';
                     if(selectedQuote.get(0).State__c == 'Colorado'){
                     stateId = '128';
                     } 
                     if(selectedQuote.get(0).State__c == 'Texas'){
                     stateId = '209';
                     }
                      hope+='<FieldWithValue>'+
                        +'<FieldId xmlns="http://filehold.com/librarymanager/scanningmanager/">54</FieldId>'+
                        +'<FieldValue xsi:type="ArrayOfInt" xmlns="http://filehold.com/librarymanager/scanningmanager/"><int xmlns="">'+stateId+'</int></FieldValue>'+
                      +'</FieldWithValue>';
                   }
                
                    hope+='</ArrayOfFieldWithValue>';
                    b.Value = hope;
                    
                    fileholdComLibrarymanagerScanningmana.ScanningSetting a = new fileholdComLibrarymanagerScanningmana.ScanningSetting();
                    a.key = 'AutoFile';
                    a.Value = 'True';
                    
                    fileholdComLibrarymanagerScanningmana.ArrayOfScanningSetting settings = new fileholdComLibrarymanagerScanningmana.ArrayOfScanningSetting();
                    settings.ScanningSetting = new fileholdComLibrarymanagerScanningmana.ScanningSetting[4];
                    settings.ScanningSetting[0] = a;
                    settings.ScanningSetting[1] = b;
                    settings.ScanningSetting[2] = c;
                    settings.ScanningSetting[3] = d;
                    
                    fileholdComLibrarymanagerScanningmana.ScanningManagerSoap manager = new fileholdComLibrarymanagerScanningmana.ScanningManagerSoap();   
                    manager.inputHttpHeaders_x = new map<String,String>();
                    manager.inputHttpHeaders_x.put('Cookie', 'FHLSID='+cookie);
                    manager.SetSettings(settings);
                    
                    this.openUrl = this.fileholdUrl + '/FH/FileHold/WebClient/LoginForm.aspx?sessionId=' + cookie + '&originalUrl=%2FFH%2FFileHold%2FWebClient%2FAddDocumentWizardForm.aspx?ui=lock';
                } else {
                    this.auth = false;
                }

            } else {
                this.auth = false;
            }
        } else {
            this.auth = false;
        }
        }
    }