理解 java/apex 复杂的三元运算符
Understanding java/apex complex ternary operator
这是 apex 代码,但提议似乎在 Java 或 JScript 中工作。
我有以下代码行(包括注释):
// If GPMIR_fld_codigoOrigen__c 09 Fotofactura will not be assigned to agency for send csv
eLead.GPMIR_fld_assignAgency__c = (eLead.GPMIR_fld_codigoOrigen__c!='09') ? ((u.Contact != null && u.Contact.Account != null && rt == 'Agencia') ? u.Contact.Account.Id : null) : null;
尝试将翻译为常规if-else我认为这里发生的事情是(包括评论):
// If GPMIR_fld_codigoOrigen__c != 09 then GPMIR_fld_assignAgency__c == null
if(eLead.GPMIR_fld_codigoOrigen__c!='09'){
if(u.Contact != null && u.Contact.Account != null && rt == 'Agencia'){
eLead.GPMIR_fld_assignAgency__c = u.Contact.Account.Id;
}else{
eLead.GPMIR_fld_assignAgency__c = null;
}
}else{
eLead.GPMIR_fld_assignAgency__c = null;
}
可能我错了但是如果有人能帮我做正确的翻译我会很感激
似乎是正确的,但您也可以在函数内执行此操作
Public string MyFunction(){
if(eLead.GPMIR_fld_codigoOrigen__c!='09'){
if(u.Contact != null && u.Contact.Account != null && rt == 'Agencia'){
Return u.Contact.Account.Id;
}
}
Return null;
}```
//Then in main(), eLead.GPMIR_fld_assignAgency__c = MyFunction()
希望我也是对的。
这是 apex 代码,但提议似乎在 Java 或 JScript 中工作。
我有以下代码行(包括注释):
// If GPMIR_fld_codigoOrigen__c 09 Fotofactura will not be assigned to agency for send csv
eLead.GPMIR_fld_assignAgency__c = (eLead.GPMIR_fld_codigoOrigen__c!='09') ? ((u.Contact != null && u.Contact.Account != null && rt == 'Agencia') ? u.Contact.Account.Id : null) : null;
尝试将翻译为常规if-else我认为这里发生的事情是(包括评论):
// If GPMIR_fld_codigoOrigen__c != 09 then GPMIR_fld_assignAgency__c == null
if(eLead.GPMIR_fld_codigoOrigen__c!='09'){
if(u.Contact != null && u.Contact.Account != null && rt == 'Agencia'){
eLead.GPMIR_fld_assignAgency__c = u.Contact.Account.Id;
}else{
eLead.GPMIR_fld_assignAgency__c = null;
}
}else{
eLead.GPMIR_fld_assignAgency__c = null;
}
可能我错了但是如果有人能帮我做正确的翻译我会很感激
似乎是正确的,但您也可以在函数内执行此操作
Public string MyFunction(){
if(eLead.GPMIR_fld_codigoOrigen__c!='09'){
if(u.Contact != null && u.Contact.Account != null && rt == 'Agencia'){
Return u.Contact.Account.Id;
}
}
Return null;
}```
//Then in main(), eLead.GPMIR_fld_assignAgency__c = MyFunction()
希望我也是对的。