Miklix

Ngonversi Real menyang String karo Kabeh Desimal ing Dynamics AX 2012

Diterbitake: 16 Februari 2025 ing 10:41:30 UTC

Ing artikel iki, Aku nerangake carane Ngonversi nomer floating point kanggo senar nalika ngreksa kabeh decimals ing Dynamics AX 2012, kalebu conto kode X ++.


Kaca iki diterjemahake mesin saka basa Inggris supaya bisa diakses dening akeh wong. Sayange, terjemahan mesin durung dadi teknologi sing sampurna, mula kesalahan bisa kedadeyan. Yen sampeyan seneng, sampeyan bisa ndeleng versi Inggris asli ing kene:

Convert a Real to String with All Decimals in Dynamics AX 2012

Informasi ing kirim iki adhedhasar Dynamics AX 2012 R3. Bisa uga ora bener kanggo versi liyane.

Saben-saben, aku kudu ngowahi nomer nyata dadi senar. Biasane, mung maringaken kanggo strFmt () cukup, nanging fungsi sing tansah babak mati kanggo rong decimals, kang ora tansah aku pengin.

Banjur ana fungsi num2str (), sing bisa digunakake kanthi apik, nanging mbutuhake sampeyan ngerti sadurunge jumlah desimal lan karakter sing dikarepake.

Apa yen sampeyan mung pengin nomer diowahi kanggo senar, karo kabeh digit lan decimals? Kanggo sawetara alesan, iki soko sing tansah kula Googling amarga iku kaget ora jelas apa lan aku nindakake iku arang banget sing biasane ora bisa ngelingi persis carane - ing paling basa program, Aku bakal nyana sing mung bisa concatenate nyata kanggo senar kosong, nanging X++ ora ndhukung sing.

Oalah, kanthi cara sing paling gampang aku nemokake kanggo nindakake iki yaiku nggunakake telpon .NET. Ana macem-macem opsi ing kene uga, kanthi lan tanpa opsi kanggo format sing luwih maju, nanging yen sampeyan mung pengin konversi nyata sing gampang dadi senar, iki bakal cukup:

stringValue = System.Convert::ToString(realValue);

Yen kode iki bakal mbukak ing AOS (contone ing proyek kumpulan), elinga kanggo negesake ijin akses kode perlu pisanan. Ing kasus iki, sampeyan butuh InteropPermission saka jinis ClrInterop kanggo nelpon kode .NET, supaya conto kode lengkap bakal katon kaya iki:

new InteropPermission(InteropKind::ClrInterop).assert();
stringValue = System.Convert::ToString(realValue);
CodeAccessPermission::revertAssert();

Elinga yen fungsi System::Convert prasaja iki nggunakake lokal sistem saiki babagan karakter titik desimal. Iki bisa uga ora dadi masalah kanggo sampeyan, nanging kanggo kula sing manggon ing wilayah sing koma digunakake tinimbang titik minangka pemisah desimal, bisa uga mbutuhake proses luwih lanjut yen string contone kudu digunakake ing file sing kudu bisa diwaca dening sistem liyane.

Nuduhake ing BlueskyNuduhake ing FacebookNuduhake ing LinkedInNuduhake ing TumblrNuduhake ing XNuduhake ing LinkedInPin ing Pinterest

Mikkel Bang Christensen

Babagan Penulis

Mikkel Bang Christensen
Mikkel minangka pencipta lan pemilik miklix.com. Dheweke duwe pengalaman luwih saka 20 taun minangka programmer komputer / pangembang piranti lunak profesional lan saiki kerja full-time kanggo perusahaan IT Eropa sing gedhe. Nalika ora ngeblog, dheweke mbuwang wektu luang kanggo macem-macem minat, hobi, lan kegiatan, sing bisa uga katon ing macem-macem topik sing dibahas ing situs web iki.