กำลังดึงค่าของผู้ใช้อย่างอิสระจากฟิลด์การค้นหา

ฉันกำลังพยายามเขียนแบบสอบถามในทริกเกอร์เอเพ็กซ์ที่จะส่งคืนค่าที่เป็นมิตรกับผู้ใช้

Map<String, Order> order_1 = new Map<String, Order>([
Select Account.Name
From Order
]);

System.debug('Order 1: ' + order_1);

เมื่อฉันเขียนแบบสอบถามในทริกเกอร์ มันจะส่งคืนชุดตัวอักษรเลขคี่ แต่เมื่อฉันเขียนในตัวแก้ไขแบบสอบถาม มันจะส่งคืนบางอย่างเช่น "Toys R Us" เป็นต้น เหตุใดแบบสอบถามจึงส่งคืนคีย์ต่างประเทศแทนที่จะเป็นข้อมูลเมื่ออยู่ในทริกเกอร์ของฉัน แต่ส่งคืนชื่อบัญชีจริงในตัวแก้ไขแบบสอบถาม


person Richard    schedule 22.11.2019    source แหล่งที่มา


คำตอบ (1)


เนื่องจากการส่งแบบสอบถามไปยังตัวสร้างแผนที่จะใช้รหัสระเบียนเป็นคีย์ ฉันคิดว่าสิ่งที่คุณต้องการคือ:

Map<String, Order> order_1 = new Map<String, Order>();

for(Order o : [Select Account.Name From Order]) {
    order_1.put(o.Account.Name, o);
}

System.debug('Order 1: ' + order_1);
person nerdy beast    schedule 03.12.2019