Miklix

Ngarobih Real kana String sareng Sadaya Desimal dina Dynamics AX 2012

Diterbitkeun: 16 Pébruari 2025 jam 10.47.07 UTC

Dina artikel ieu, kuring ngajelaskeun kumaha carana ngarobah angka floating titik mun string a bari preserving sadayana decimals dina Dinamika AX 2012, kaasup hiji conto kode X ++.


Kaca ieu ditarjamahkeun ku mesin tina basa Inggris supados tiasa diaksés ku saloba-lobana jalma. Hanjakalna, tarjamahan mesin henteu acan janten téknologi anu sampurna, janten kasalahan tiasa lumangsung. Upami anjeun hoyong, anjeun tiasa ningali versi Inggris asli di dieu:

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

Inpormasi dina tulisan ieu dumasar kana Dynamics AX 2012 R3. Ieu bisa atawa bisa jadi teu valid pikeun vérsi séjén.

Unggal sakali dina bari, abdi kedah ngarobah angka riil kana string a. Biasana, ngan ngalirkeun ka strFmt () cukup, tapi fungsi nu salawasna rounds kaluar ka dua decimals, nu teu salawasna naon Abdi hoyong.

Teras aya fungsi num2str (), anu tiasa dianggo saé, tapi peryogi anjeun terang sateuacanna sabaraha perpuluhan sareng karakter anu anjeun pikahoyong.

Kumaha upami anjeun ngan ukur hoyong nomerna dirobih janten senar, sareng sadaya digit sareng desimal? Kanggo sababaraha alesan, ieu mangrupikeun hal anu sok kuring Googling sabab heran teu jelas pikeun ngalakukeunana sareng kuring jarang ngalakukeunana anu biasana kuring henteu émut persis kumaha - dina kalolobaan basa program, kuring bakal nyangka yén anjeun ngan ukur tiasa ngahijikeun anu nyata kana senar kosong, tapi X ++ henteu ngadukung éta.

Atoh, ku cara tebih panggampangna Kuring geus kapanggih pikeun ngalakukeun ieu téh ku ngagunakeun panggero .NET. Aya ogé sababaraha pilihan di dieu, sareng sareng tanpa pilihan pikeun pormat canggih, tapi upami anjeun ngan ukur hoyong konvérsi anu saderhana nyata kana senar, ieu bakal cekap:

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

Upami kode ieu dijalankeun dina AOS (contona dina padamelan angkatan), émut pikeun ngeceskeun idin aksés kode anu diperyogikeun heula. Dina hal ieu anjeun peryogi InteropPermission tipe ClrInterop pikeun nelepon kode .NET, jadi conto kode lengkep bakal kasampak kawas kieu:

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

Sadar yén fungsi System:: Convert basajan ieu ngagunakeun lokal sistem ayeuna nu aya kaitannana ka karakter titik decimal. Ieu bisa jadi teu jadi masalah pikeun anjeun, tapi keur kuring nu hirup di wewengkon mana koma dipaké tinimbang titik salaku separator decimal, éta bisa merlukeun processing salajengna lamun string misalna perlu dipaké dina file nu kudu bisa dibaca ku sistem lianna.

Bagikeun on BlueskyBagikeun dina FacebookBagikeun on LinkedInBagikeun dina TumblrBagikeun harga XBagikeun on LinkedInPin on Pinterest

Mikkel Bang Christensen

Ngeunaan Pangarang

Mikkel Bang Christensen
Mikkel mangrupikeun panyipta sareng pamilik miklix.com. Anjeunna gaduh pangalaman langkung ti 20 taun salaku programmer komputer / pamekar software profésional sareng ayeuna padamelan full-time pikeun korporasi IT Éropa anu ageung. Nalika henteu ngeblog, anjeunna nyéépkeun waktos luangna dina sajumlah ageung minat, hobi, sareng kagiatan, anu tiasa ditingali dina rupa-rupa topik anu aya dina halaman wéb ieu.