Livecode mobileAddContact

มีใครเคยใช้ mobileAddContact บน iOS แล้วสามารถเพิ่มที่อยู่ได้หรือไม่?

จนถึงตอนนี้ ฉันสามารถเพิ่มชื่อ รายละเอียดการติดต่อ (โทรศัพท์ อีเมล ฯลฯ) ได้ แต่ฉันไม่สามารถเพิ่มรายละเอียดที่อยู่ได้ (ถนน เมือง รหัสไปรษณีย์ ฯลฯ)

นี่คือรหัสที่ฉันเขียน

 mobileAddContact \
     "firstname", tFirstName, \
     "middlename", tMiddleName, \
     "lastname", tLastName, \
     "prefix", tPrefix, \
     "organization", tOrganisation, \
     "emailhome", tEmailHome, \
     "phonemobile", tPhoneMobile, \
     "phonehome", tPhoneHome, \
     "phonework", tPhoneWork, \
     "note", tNote, \
     "addressstreethome", "Street Name", \
     "addresscityhome", "City Name", \
     "addressstatehome", "State Name", \
     "addressziphome", "Postcode", \
     "addresscountryhome", "Country"

ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชม

ทีไอเอ, เอเอ.


person Alex Alexander    schedule 07.04.2013    source แหล่งที่มา


คำตอบ (3)


ก่อนอื่น ดูเหมือนว่าคุณพบข้อบกพร่องซึ่งจำเป็นต้องรายงานไปยัง RunRev ฉันตรวจสอบตัวอย่างและไวยากรณ์ของคุณในเอกสารประกอบแล้ว และไม่มีสิ่งใดในสคริปต์ของคุณที่ไม่ควรทำงาน

ประการที่สอง คุณสามารถลองทำบางสิ่งได้ เช่น แยกคำสั่งออกเป็นคำสั่งเดียวเพื่อสร้างผู้ติดต่อ และอีกคำสั่งเพื่ออัปเดตผู้ติดต่อด้วยข้อมูลที่อยู่ คุณอาจลองใส่ข้อมูลทั้งหมด รวมถึงข้อมูลที่อยู่ ลงในตัวแปร ดูเหมือนว่าในตัวอย่างของคุณคู่ที่มีตัวแปรใช้งานได้ แต่คู่ที่มีสตริงไม่ทำงาน

ประการที่สาม ฉันสงสัยว่ามีข้อมูลจำนวนสูงสุดที่สามารถจัดเก็บไว้ในสมุดที่อยู่ได้หรือไม่ บางทีข้อมูลใน tNote ยาวเกินไป ฉันควรเน้นว่าฉันไม่แน่ใจว่าสิ่งหลังสำคัญหรือไม่

person Mark    schedule 07.04.2013
comment
สวัสดีมาร์ค ขอบคุณที่สละเวลาตอบ ในโค้ดต้นฉบับของฉัน ข้อมูลทั้งหมดอยู่ในตัวแปร ดังนั้นฉันจึงพยายามใช้สตริงเพื่อตรวจสอบอีกครั้งว่าตัวแปรนั้นไม่ถูกตำหนิ ข้อมูลใน tNote มีขนาดประมาณ 100 ตัวอักษร แต่ฉันจะพยายามทิ้งมันไว้ตอนนี้ ฉันยังพิจารณาแยกคำสั่งด้วย แต่ฉันไม่เห็นว่าการอัปเดตทำงานอย่างไรเนื่องจากฉันไม่สามารถใช้คีย์ผู้ติดต่อในคำสั่ง mobileUpdateContact (หรือฉันอาจพลาดบางสิ่งบางอย่าง...) - person Alex Alexander; 08.04.2013
comment
อัปเดตเพิ่มเติม... การเปลี่ยน tNote ไม่ได้สร้างความแตกต่าง ฉันแยกคำสั่ง บันทึกคีย์ และใช้ mobileUpdateContact สิ่งนี้จะแสดงหน้าจอให้เลือกผู้ติดต่อที่มีอยู่หรือเพิ่มผู้ติดต่อใหม่ ดังนั้นฉันจึงเลือกที่มีอยู่ ไม่มีการเพิ่มที่อยู่เช่นกัน... ฉันส่งรายงานไปยัง Livecode แล้ว ไขว้นิ้วเอาไว้... - person Alex Alexander; 08.04.2013
comment
mobileAddContact ควรส่งคืนหมายเลขหากสร้างผู้ติดต่อแล้ว นี่คือหมายเลข ID ของผู้ติดต่อใหม่ คุณสามารถใช้ mobileUpdateContact เพื่ออัปเดตผู้ติดต่อ ฉันรู้ว่านี่ไม่ใช่วิธีแก้ปัญหาที่ถูกต้อง แต่จะมีประโยชน์หากทดสอบดูว่าได้ผลหรือไม่ หาก mobileUpdateContact ใช้งานได้ แต่ mobileAddContact ไม่ได้ผล แสดงว่าเป็นจุดบกพร่องที่ต้องรายงานอย่างแน่นอน - person Mark; 08.04.2013
comment
มาร์ค ฉันได้บันทึก ID ผู้ติดต่อจาก mobileAddContact อย่างไรก็ตาม mobileUpdateContact ไม่ยอมรับ ID เว้นแต่ฉันจะพลาดบางสิ่งในพจนานุกรม mobileCreateContact จะแสดงกล่องโต้ตอบแบบโต้ตอบที่ให้คุณใส่รายละเอียดทั้งหมด ฉันไม่ต้องการใช้เพราะมันขัดต่อจุดประสงค์ในการส่งออกข้อมูลในเบื้องหลัง - person Alex Alexander; 09.04.2013
comment
ฉันเพิ่งลองใช้ mobileUpdateContact เหมือนกัน ดังที่ Alex ชี้ให้เห็น ไม่มีข้อกำหนดในไวยากรณ์ของ mobileUpdateContact ที่จะรวม ID หากคุณมีผู้ติดต่อชื่อ เช่น John Smith และคุณเลือกตัวเลือกนี้ในอินเทอร์เฟซ iOS ผู้ติดต่อนั้นจะไม่ผนวกข้อมูลเข้ากับรายการ John Smith หากคุณสร้างใหม่ผ่านอินเทอร์เฟซแทน จะสร้างรายการซ้ำในรายชื่อติดต่อ... และทำให้คุณไม่สามารถหลบหนีจากอินเทอร์เฟซที่แสดงได้ ยกเว้นการกดปุ่มโฮมของฮาร์ดแวร์ สับสนมาก! - person Charles B; 30.07.2014

ขออภัย คุณพบจุดบกพร่องในเอกสารประกอบ ฟังก์ชันการทำงานของอุปกรณ์พกพาในส่วนนี้ได้รับการปรับปรุงใน LiveCode 5.5.1 และรวมการเปลี่ยนแปลงไวยากรณ์ แต่ไม่ส่งผลให้มีการอัปเดตเอกสารประกอบ

คำสั่ง mobileContact ทั้งหมดจำเป็นต้องมีอาร์เรย์ข้อมูลที่ซ้อนกันซึ่งใช้ในการสร้าง/อัปเดตข้อมูลผู้ติดต่อ รายการพจนานุกรมทั้งหมดได้รับการอัปเดตและจะเป็น LiveCode 6.0 ในระหว่างนี้ โปรดดูหน้า 48 ของบันทึกประจำรุ่น iOS ซึ่งมีรายละเอียดการใช้งานและรูปแบบของคำสั่งเหล่านี้

local tContactData

put "John" into tContactData["firstname"]
put "Smith" into tContactData["lastname"]
put "+44(0)77774443555" into tContactData["phone"]["mobile"][1]

mobileCreateContact tContactData
person Benjamin Beaumont    schedule 08.04.2013
comment
ขอบคุณเบนจามิน ฉันถือว่าคุณกำลังอ้างถึงบันทึกประจำรุ่น iOS 6.0 ฉันจะหาพวกเขาได้ที่ไหน? - person Alex Alexander; 08.04.2013
comment
runrev.com/downloads/livecode/5_5_4/LiveCodeNotes-5_5_4- iOS.pdf - หน้า 44-48 - person Benjamin Beaumont; 08.04.2013
comment
เบนจามิน ฉันไม่เห็นการกล่าวถึงอาร์เรย์ในเอกสารนั้นเลย คุณแน่ใจหรือว่านี่เป็นไฟล์ที่ถูกต้อง? - person Mark; 08.04.2013
comment
ฉันลองใช้คำแนะนำของ Benjamin กับ mobileAddContact แต่ดูเหมือนว่าจะไม่ได้ผลเช่นกัน ฉันเจาะรายละเอียดที่อยู่ เช่น [ที่อยู่] [ถนน] [บ้าน] [1] แต่ตอนนี้ผู้ติดต่อถูกสร้างขึ้นโดยไม่มีรายละเอียดใด ๆ (ไม่มีชื่อ!) เมื่อฉันลองใช้ mobileCreateContact มันจะแสดงกล่องโต้ตอบแบบโต้ตอบโดยที่ทุกฟิลด์ว่างเปล่า - person Alex Alexander; 09.04.2013
comment
ใส่รายการที่ 1 ของ tNameDetails ลงใน tContactData[คำนำหน้า] ใส่รายการที่ 2 ของ tNameDetails ลงใน tContactData[firstname] ใส่รายการที่ 1 ของ tNameDetails2 ลงใน tContactData[address][home][1][street] ใส่รายการที่ 2 ของ tNameDetails2 ลงใน tContactData[address][ home][1][city] ใส่รายการที่ 3 ของ tNameDetails2 ลงใน tContactData[address][home][1][state] ใส่รายการที่ 4 ของ tNameDetails2 ลงใน tContactData[address][home][1][zip] ใส่รายการที่ 5 ของ tNameDetails2 ลงใน tContactData[ที่อยู่] [บ้าน] [1] [ประเทศ] mobileAddContact tContactData - person Alex Alexander; 09.04.2013

ฉันเพิ่งทดสอบโค้ดที่คุณโพสต์ แต่แทนที่ตัวแปรของคุณด้วยสตริง ฉันสร้างสแต็กเปล่าที่มีปุ่มและฟิลด์ และใส่โค้ดต่อไปนี้ลงในปุ่ม:

on mouseUp
   put "mr" into tContactData["prefix"] 
   put "ben" into tContactData["firstname"] 
   put "street" into tContactData["address"]["home"][1]["street"] 
   put "city"  into tContactData["address"]["home"][1]["city"] 
   put "state" into tContactData["address"]["home"][1]["state"] 
   put "zip" into tContactData["address"]["home"][1]["zip"] 
   put "country" into tContactData["address"]["home"][1]["country"] 

   mobileAddContact tContactData
   put the result into field 1
end mouseUp

คุณจะสังเกตเห็นจากพจนานุกรมว่าพจนานุกรมจะใส่รหัสตัวเลขของผู้ติดต่อลงใน 'ผลลัพธ์' หากสำเร็จ ในกรณีของฉัน เครื่องจำลอง iOS ของฉันไม่มีผู้ติดต่อ ดังนั้นฉันจึงได้ '1' และเมื่อฉันไปที่ผู้ติดต่อ ฉันมีรายการเดียว.. 'mr ben'

ฉันหวังว่ามันจะช่วยได้

person Benjamin Beaumont    schedule 09.04.2013
comment
เบน ฉันคัดลอกโค้ดของคุณแล้วรันบน iPad และเครื่องจำลองโดยใช้ 5.5.4 ในทั้งสองกรณี มีการสร้างเรกคอร์ดเป็น 'ไม่มีชื่อ โดยไม่มีข้อมูลใดๆ เลย' ฉันไม่สามารถทดสอบด้วย 6.0 ได้เพราะฉันไม่สามารถสร้างแบบสแตนด์อโลนได้ วันนี้ฉันโพสต์คำถามเกี่ยวกับเรื่องนั้นอีกแล้ว! - person Alex Alexander; 11.04.2013