on 09-16-2022 12:31 PM
Hi,
1. Can i Excel (.xlsx) file generate on FTP server by SAP ABAP?
2. I want transfer from SAP itab to FTP Server in form of Excel (.xlsx) .
3. If, Yes. Please share a sample of code Like:
Material Master data take in itab and transfer on FTP server by FM FTP_R3_TO_SERVER.
Thanks & Regards,
Vino Yad
I won't explain here how to generate XLSX file, but how to send an existing XLSX file via FTP.
" XLSX equal to the one generated by ZDEMO_EXCEL1 from https://github.com/abap2xlsx/demos
DATA(abap2xlsx_zdemo_excel1_base64) = ``
&& `UEsDBBQAAAAIAPZ6MVWm2KVQVQEAAOIEAAATAAAAW0NvbnRlbnRfVHlwZXNdLnhtbK2US07DQAyGrxLNFjXTsmCB2rKgbKESXMBk`
&& `nGbUycxo7L7OxoIjcQWchCJAfaF2k1Fi///n2E4+3t6Hd+vaZUtMZIMfqUHeV1lGDN6ACx5HaoOk7sbDl01EyiTX00hVzPFWayoq`
&& `rIHyENFLpAypBpbbNNMRijnMUF/3+ze6CJ7Rc48bDzUeTrCEhePsYS2PO25CRyq77xIb1khBjM4WwBLXS2/+UHpfhFyUbQ5VNtKV`
&& `JCi9k9BE9gP265YHdTsKC2VpCzShWNQiyUU/SbCyftYAnqTTyRrMppD4EWqx02unWRqJ3XWQH670OLG12XZiD5B445DORlFMCIYq`
&& `RK5d3pkeIa9Cmr+GML80uznzGqw/xBfxNIVIWlBnF4DNkhg0vSiWmNie9O5toaTb4/xZ/27Ct/+x6VeQ0Dxzkq28+BL89D5pFkVI`
&& `+P8itt9/o94xAd3+sMafUEsDBBQAAAAIAPZ6MVWbC5ec4gAAAD0CAAALAAAAX3JlbHMvLnJlbHOtkk1OAzEMha8SZc94WiQWqNNu`
&& `uukOoV7AJJ4fzSSOHAPTs7HgSFyBsEAwUqm6YGn7+fmz5Y+3981uDpN5IckDx8auqtoakxWjx4kjNfZE2e62m0eaUIsk90PKpvTE`
&& `3NheNd0DZNdTwFxxolgqLUtALaF0kNCN2BGs6/oO5LeHXXqag2+sHPytNcdTomu8uW0HR3t2z4GinhkBNCtFT/4mSekXHcou5ojS`
&& `kTbWs3so6QyYUlWsLZwnWl9P9Pe2EEjRoyI4FrrM86W4BLT6zxMtFT808wSvLOMT8/jNAosf2H4CUEsDBBQAAAAIAPZ6MVVA6zRr`
&& `aAEAAO8CAAAQAAAAZG9jUHJvcHMvYXBwLnhtbJ2SQW7CMBBFrxJ5X5ygqgtkXFVQiUWrIkHp2nUmxMLYkWeIoFfrokfqFeoEEULp`
&& `qlnN/Pn5eRn7+/NL3O+3NqkhoPFuzLJBypIESblcWe9gzA6A7F6KefAVBDKASXzB4ZiVRNWIc9QlbBUO4tjFSeHDVlFsw5r7ojAa`
&& `pl7vtuCID9P0jsOewOWQ31RdIDsmjmr6b2judcOHq+WhinlSPFSVNVpR/Cf5bHTw6AtKHvcarOD9oYhBC9C7YOggU8H7rVhoZWES`
&& `g2WhLILgZ0HMQOXGrefKBJSiplENmnxI0HzEpQ1Z8q4QGpwxq1UwyhE72o5NW9sKKcg3HzZYAhAK3olt2ff2a3Mrs9YQi0sj70Bi`
&& `fYm4NGQBX4q5CvQHcdYnbhlYj3HR8GVXfKcv/cp+Mm6Dr9XSTxXBaXeXoliUKkAe193tthPELEIE2/gnpXJryE+e60Fz0qvj5ZXZ`
&& `cJDGpz3gkyb4+eLKH1BLAwQUAAAACAD2ejFVQ0fedjwBAAB7AgAAEQAAAGRvY1Byb3BzL2NvcmUueG1snZLfTsIwFIdfZen91v0h`
&& `EJtREgWvIBIlarxr2gM0rmvTVgfP5oWP5Cu4DRgjcuVl+/vOd05P+vP1nU92qgg+wTqpyzFKohgFgfOsFKzQJYzRHhya0JwbwrWF`
&& `pdUGrJfggrqudISbMdp6bwjGjm9BMRfVRFmHa20V8/XRbrBh/J1tAKdxPMQKPBPMM9wIQ9MZ0VEpeKc0H7ZoBYJjKEBB6R1OogSf`
&& `WQ9WuasFbdIjlfR7A1fRU9jROyc7sKqqqMpatJ4/wa+L+VP71FCWzaY4IJoLTrgF5rWl09nzbP6wnD3muHfbEAIct9L4etV0FCXD`
&& `KG6R/nWz6II5v9BCriWI233f9zfMjxs49AER1JOTwztPyUt2N13dI5rGaRrGN2EyWiUDkmZkkL01/S/qz0J1bPJv40lA27kvfw/9`
&& `BVBLAwQUAAAACAD2ejFVNgGis+IAAACrAgAAGgAAAHhsL19yZWxzL3dvcmtib29rLnhtbC5yZWxzrZJNTsMwEIWvYs0B4qQgFqhu`
&& `N910C1zASiZx1MS2ZoafnI0FR+IKDFSUVKoqFllZb+x579OTP98/1tu3cTAvSNyn6KAqSjCGxcfGDymigwkZtpv1Aw5e9AmHPrPR`
&& `ncgOgki+t5brgKPnImWMetMmGr2opM5mXx98h3ZVlneW5h5w7mn2jQPaNyswT1PG/3intu1r3KX6ecQoFyKs6C6qoacOxcGPPA6r`
&& `Qs3AXma4WZKBZRq0whPEUV+Lr5aMf0104IAofwSnkcJ9H1e7uF20i+AJm0ehPnbzSubjXxh79uM2X1BLAwQUAAAACAD2ejFVAIwE`
&& `zI4FAACfHwAAEwAAAHhsL3RoZW1lL3RoZW1lMS54bWztmV9v2zYQwL+KoPfVf2XXQZ0i8Z92a9IWTdahj2eJllhTpEBSSf02tI8D`
&& `Bgzrhr0M2Nsehm0FWmAv3afJ1mHrgH6FUZIjkxaduVvXBl0dIJHJ3514x+PdSbl0+V5MnCPEBWa07zYu1F0HUZ8FmIZ9N5XT9y66`
&& `jpBAAyCMor47R8K9vH0JtmSEYuQoaSq2oO9GUiZbtZrw1TCICyxBVM1NGY9Bqq88rAUcjpXWmNSa9XqnFgOmrkMhVkrdUuGIqF9U`
&& `imzAJ/zAz+9SUDemU+yjnA1mjeyPmIsB4c4RkL6rdAfs+BDdk65DQEg10Xfr+cetbV+qlUJErpHV5Mb5ZyG3EAhmzVyOh5NSsN32`
&& `2p2dUn+z0F/lRt1RZ9Qp9eUA+L6ytFFhvd3e7tBbsBpUXFp0D7vDVsPgNf2tCr/jZT8G31ry7Qo/Hg+WPtSg4tKz+KTbHLQN3lvy`
&& `nQrfre8M212Dz6GIYDqr0HWv0xqcWlsiU0auWvGe1x53mwt8SdW06CrkqVwXazHcZXysgHxzQWLqyHmCpuArbgAETzh29nAYqcBL`
&& `gDKhhuvN+rjeUr+zn3Z+lXsEthBo0sWQLypD2Xoc4XOcSLVhHCauhhziGAnnOjp2brEYqEViF9FQl7jNVYCDBRwAFTo4ShPlBGxF`
&& `I8R19CYBKiFEFEknm2MzhCxiQ3QEutg+0BCIBRzJCOvg9TkQ2zquIGas42BOpoBsXriS3jXJiKcSW0Ge6uAtgCMbdxVMtz7/9rM/`
&& `v/7Y+ePxN88ffmHnDe/++sMnv/z8uR2UOvjsy0e/PXn07KtPf//uoQ1HE/5yAfGBCkxd4sXT7188fey8ePro5P6Tk/s/nTx4cHL/`
&& `R4vgtSg2brXPGNll3HqTa1mM6ctK1VZbuD1gTOeGbDaIIE5s7D6Zxzp7DbjEMyvJzM3JvjOCgTq7gK3bfoPPwdStkoN1xQeYRjr5`
&& `vpgpP4Bzk0krPue+caqEVB4LEWHOKEBC2GQOISa6zB7IyMohYsTqFUglxDbzDiMwT95tZ1c5xE4aR+8QIhVHNhBPjDjdxz5ngk2l`
&& `cxXH6rjObUIfqtRoF8pmUm4RuY2RfLkAv4Mxtt/kDl4GQG0lm8eY/m1qX0nq3n+U1Hc4tqbFd6n8f5XK14XBK0vgQ0jpTaTS2bv8`
&& `/S5/v678vS6qN8/ay0Rd07v1XGNsb92d/JMBmJADOSdoT8jFaD4ulDeDsZosB4vhXFn5BJFE6lItoyRqNkklF3LIxxzO5EdYRgcR`
&& `JGo5DddUHwp9GeWgkzChSoxrzKxfzwqWgySN91lQUI3G4sHXwgmQS04VtHWcKoeyoDpdG5R74nRx26szoVhnpJcv7VUZeoYBpqGt`
&& `DQztWqF/amij/mYs7W1g6cXGv7S0GDBjOVux6qEge3fktQvr1WEHgoIsts1DdHpeztUZ2jRkzI1pbuDwXvtcnSHD0DOShWnoGUkl`
&& `ggCdiZ2PU9RbfzgMlzQ3MrV78Zydorw8VutdppLaaiChzrHK7y1P3cKHpO9O1WOQuowTdS+RdWRAQtp3fclXzqCtem5SP9dV0Fw2`
&& `4UIOQUSFaA6ZolkrIBF3CI5VDlsNtPztKq3a12h262+3gb36W7iDxZdqKKPpFPnSFs7ajHnPYkLR5q1s/OtUs+p5lirXHETBsTMh`
&& `Kb8Fagu9biPb2gALWe5zgLmWGpb7u1I2rUnTeJluTa05BySJYNH9rW+KCmWVFFeasRIzVbvt3lsZNTZ/Eo5fTz//MupW91Er+5am`
&& `bbXWdCu1xl5Bzu+jh2bv+p7JsNnbqL72rPV10w7sjTVXmjvWG2C4o7WZOzbt087ZY4xmgj2ZbNp/veHOypJ78oYrLl9H1Cz/x2aT`
&& `uyqTDdEUUiJF8cL4nuQwOP0PZF5PitHi8lTL9l9QSwMEFAAAAAgA9noxVYNBek8pAQAA+AEAAA8AAAB4bC93b3JrYm9vay54bWyN`
&& `UMtOwzAQ/BXLH1CnISkQNa2EQKIXVAmpPZt401j1S7ZL2m/jwCfxC6wTRaU3Tjsz9s7O7s/X93J91op8gg/SmprOZxklJERuBFfW`
&& `QE0vEOh6teytP35YeyT43YSadjG6irHQdKB5mFkHBl9a6zWPSP2BBeeBi9ABRK1YnmULprk0dHSo/H88bNvKBp5tc9Jg4mjiQfGI`
&& `YUMnXaCrZSsV7Mb8hDv3xjWmPitKFA/xRcgIoqYFUtvDjeBP7ukkVSJltqDsuuTWI0lgJ6EPVz1Rct5LI2yPt8rxVpcb1g9kL0Xs`
&& `UHnM7spJewV56GJNH4qiTKPYH/vhRlMlZljgPeE5JYO2wYyIfSUR+I2YDw5Tm4BWGhBp8YB6w1Wz9SSVoS8v7/Nx5LTG6hdQSwME`
&& `FAAAAAgA9noxVYqW7KzNAQAAogQAAA0AAAB4bC9zdHlsZXMueG1srZTNatwwEMdfRegBorXZLLTYziFgCLShkBx6ldeyV6API40X`
&& `u6/WQx+pr9CR5Hi9JaFNqS8a/TXzm2FG1s/vP4q7SStyFs5La0qa3ewoIR64abmyRpR0Fp7eVYWHWYmnkxBAMMD4kp4Aho+M+eNJ`
&& `aO5v7CAMnnTWaQ64dT3zgxO89SFIK5bvdgemuTS0Ksyoaw2eVUVnDXhytKMBzE6TgOm+kTNXqGQUnY5WWUdc35S0rnfxC7LhWiS3`
&& `e65k42QQO66lmpOcByEWuPhpaawLIktp4uIxSCq1VpHTJFTFwAGEMzVuyGI/zwM2xWBr0Kvp72Nl0rRiEm1JD/sI38SFHHH5A7F3`
&& `fM7y23dC44L1N9a1OMJtH5NUFUp0gOFO9qewgh1YOASwGo1W8t4arkKCl4jFQOxRKPUUBv+1u2JPHUkTfMDy8MKELr6YWNBiJkza`
&& `BP6Wltgb7P6fsGTqVv5fRGdvRBM+DGoOnQ0+v7Oy/btKSbDHUTfC1fFveA2aZ/8HypY+boZ1NapVJeFvKeljCFYbcDNKBdK8MiZk`
&& `ttNlQvEUeIPPwFUWZLSi46OC5/WwpBf7s2jlqD+sXl/k2cLidbE/hfuZHWIFl7em+gVQSwMEFAAAAAgA9noxVcNa+YHgAQAAZgMA`
&& `ABQAAAB4bC9zaGFyZWRTdHJpbmdzLnhtbG2TQWsTQRTHv8pjT4qlG6N4kGSLDUovoih+gGn2dXfq7Mw6M5vGWytWBROlFL1GYbPp`
&& `QS0KSoqtOfgFNrcNucyh4rH9CG60VNjN5fGf/+//eG8G5uT7qLbUDhi0UCoqeN26vFixAJQm3CVMcKxbj1FZS05NKQ15kqu65Wsd`
&& `Xrdt1fQxIGpRhMhzsiZkQHR+lJ6tQonEVT6iDphdrVSu2QGh3IKmiLiuW9WrFkScPoqwcW7kI6hT086FG5Ks0ubFmq2dmj3zzvxl`
&& `5B5htAwaPuWosAxuBmKdwgZpUe6Bn18JLsEVCInUCsQaaB9hQ0jmljtvSeRNv+yvUO7O2eCukDryorlL3IuUooSXwf2QcKrmDHkg`
&& `3ajkLgu+LiIJDCEQ3MUibzDafAg+SgQtoEUV1UBWSVhtM9UGXwQYEq/UtYKMiX+PUEKCEbgdcVcUyR328/18kvbGm+kw/ZJ+HT9Z`
&& `gPQwHY43i5nJdvY5+5jtZQOYlcnT7GBWJ9vF4HRr2sn9F5DtT55NO9mgGDDxnok/mXho+l0Tx6b/HEycmP7WXzAy8b6Jf5Sakl2T`
&& `HJhBnk0+mGRkkm9m0M11MXh89O5X/+jksHM8fPv7TaeIT3s7L097nVcLcKa65+r1/6ydfxvnD1BLAwQUAAAACAD2ejFVvV0ipwcD`
&& `AAC8CAAAGAAAAHhsL3dvcmtzaGVldHMvc2hlZXQxLnhtbI2W627aMBSAXyXK32nkCgEEVKXdpVI3VUXafpvEIRZ2nNkOlL3afuyR`
&& `9go7doCa1EhFFcTn8p2Lj53++/N3dvPCqLfDQhJez/1oEPqeJxWqC0R5jef+AUv/ZjHbc7GVFcbKA/tazv1KqWYaBDKvMENywBtc`
&& `g6bkgiEFS7EJZCMwKowTo0EchqOAIVL7HWEq3sPgZUlyfM/zluFadRCBKVKQraxII080lr8Hx5DYts3HnLMGEGtCiToYqO+xfPqw`
&& `qblAawpVv0Qpyk9ss3iDZyQXXPJSDQB3TPRtzZNgEgBpMTOyJ7GY8VZRUuMn4cmWQUKHJaZ8D633T4JnsqmUFgSLWXD2Kwi0QO+S`
&& `J3A595fx9C4aahNj8YPgvbSePYXWK0xxrnBh2L85Z6sc6eKiMLTW33V/aF/6hDb4ER0gWU3ra1c6zBu1npE151steoCoIJIV338R`
&& `pHiEimVXI0ie+f6O06/QKZg7LYXETa66OgQ/O3yHKeR0qx1+mXpvrXboAPbzqfDPZquhswUuUUsVxPmKj82MB9kQNlRv5fS4BY94`
&& `hykkojMFds6pNN8eI3AUYpgJ9GJ+96RQlT4cUObF59OHEDLMW6k4+9kZKdHiI63jJEdOcuZMgGOK6SKa1O+RQouZ4HtPdG1qkD5l`
&& `0TSB5uRaaDzA4GwVu6yWIIVyJax3iyieBTsdp+eZOD21VFO1Z5oOR9HZ2ejvOn1i9OEgTsfjMBtnYWL+Unek1BkptXOM3J4jp+fI`
&& `8ozDXoIXSjc1c1IzO59xj2orh27q2Ekd29SkR7WVYzd14qRObOqoR7WVoZsahU6sFr9yJz3upfYK2Dm1Sy1+de1v2YX2ygxF7kGP`
&& `LiY97YNt7egK2H0OtPgVPOyDbW12Bewe++hi7rM+2NZOroCHbvDQnvz+ub3QJj1wYN0+1aHBAi7GrbSej28bSE5MCVzq4qHobmLb`
&& `uoG3xTckNqSWHsUlRAsHGcyM6C7fbqF4Yx4hnTVXcGOeVpV5EehVAmYl5+q8Cjr2Cqu20UHP/4Ys/gNQSwMEFAAAAAgA9noxVdFQ`
&& `317GAAAAQQEAACMAAAB4bC93b3Jrc2hlZXRzL19yZWxzL3NoZWV0MS54bWwucmVsc43QvW6EMAwA4FeJ/ACEY+hwAm5phxu6VPcC`
&& `BgyJCEkUmwqe7YZ7pL5CI1VVi9Sho/8+W/64P+rLtjj1Tolt8A2cihKUYkE/oAueGtiJ4dLWb+RQcgsbG1nlGc8NGJF41pp7Qwty`
&& `ESL5XBlDWlBymCYdsZ9xIl2V5ZNOvw04muo6NJCuwwnUbY/0HzuMo+3pOfTrQl7+WKFNlpKzfs4oponki+XsYoex2hxvxWTFrF1h`
&& `w0/uu/01DPmSl00oeXSg21of/tB+AlBLAQITABQAAAAIAPZ6MVWm2KVQVQEAAOIEAAATAAAAAAAAAAAAAAAAAAAAAABbQ29udGVu`
&& `dF9UeXBlc10ueG1sUEsBAhMAFAAAAAgA9noxVZsLl5ziAAAAPQIAAAsAAAAAAAAAAAAAAAAAhgEAAF9yZWxzLy5yZWxzUEsBAhMA`
&& `FAAAAAgA9noxVUDrNGtoAQAA7wIAABAAAAAAAAAAAAAAAAAAkQIAAGRvY1Byb3BzL2FwcC54bWxQSwECEwAUAAAACAD2ejFVQ0fe`
&& `djwBAAB7AgAAEQAAAAAAAAAAAAAAAAAnBAAAZG9jUHJvcHMvY29yZS54bWxQSwECEwAUAAAACAD2ejFVNgGis+IAAACrAgAAGgAA`
&& `AAAAAAAAAAAAAACSBQAAeGwvX3JlbHMvd29ya2Jvb2sueG1sLnJlbHNQSwECEwAUAAAACAD2ejFVAIwEzI4FAACfHwAAEwAAAAAA`
&& `AAAAAAAAAACsBgAAeGwvdGhlbWUvdGhlbWUxLnhtbFBLAQITABQAAAAIAPZ6MVWDQXpPKQEAAPgBAAAPAAAAAAAAAAAAAAAAAGsM`
&& `AAB4bC93b3JrYm9vay54bWxQSwECEwAUAAAACAD2ejFVipbsrM0BAACiBAAADQAAAAAAAAAAAAAAAADBDQAAeGwvc3R5bGVzLnht`
&& `bFBLAQITABQAAAAIAPZ6MVXDWvmB4AEAAGYDAAAUAAAAAAAAAAAAAAAAALkPAAB4bC9zaGFyZWRTdHJpbmdzLnhtbFBLAQITABQA`
&& `AAAIAPZ6MVW9XSKnBwMAALwIAAAYAAAAAAAAAAAAAAAAAMsRAAB4bC93b3Jrc2hlZXRzL3NoZWV0MS54bWxQSwECEwAUAAAACAD2`
&& `ejFV0VDfXsYAAABBAQAAIwAAAAAAAAAAAAAAAAAIFQAAeGwvd29ya3NoZWV0cy9fcmVscy9zaGVldDEueG1sLnJlbHNQSwUGAAAA`
&& `AAsACwDRAgAADxYAAAAA`.
DATA(abap2xlsx_zdemo_excel1_xlsx) = VALUE xstring( ).
CALL TRANSFORMATION id
SOURCE root = abap2xlsx_zdemo_excel1_base64
RESULT root = abap2xlsx_zdemo_excel1_xlsx.
DATA(blob_length) = xstrlen( abap2xlsx_zdemo_excel1_xlsx ).
DATA(blob) = cl_bcs_convert=>xstring_to_solix( abap2xlsx_zdemo_excel1_xlsx ).
" before send the file, you should use FTP_CONNECT to get the handle, etc. (as usual)
" now send the binary XLSX file
CALL FUNCTION 'FTP_R3_TO_SERVER'
EXPORTING
handle = g_dhdl
fname = wrk_file " file name
character_mode = abap_false " binary
blob_length = blob_length
TABLES
blob = blob
EXCEPTIONS
OTHERS = 4.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
The XLSX file I have provided above is in valid format (format "Open Office XML for Excel" AKA "Excel 2007"), so a file name with extension '.xlsx' should open correctly.
I guess the issue is how you extract the file from the FTP server, or how you name the file after extraction. Could you explain how you do it?
Hi sandra.rossi ,
1. When i pass itab data in FM 'FTP_R3_TO_SERVER' then ok. data create on FTP in text form.
2. When am i giving filename.csv. Then data are transfer on FTP & file open properly.
3. When am i giving filename.xlsx. Then excel file is creating on FTP. but file is not opening. Giving pop1.png error at file opening.
4. I am searching on web for this issue. But, I did not get proper solution.
So, Please can you give some sample of code. How can i go proper way to generate Excel (.xlsx) file on FTP server.
Thanks,
Vino Yad
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You should be able to convert your answer into a comment or even edit your question.
The issue is probably due to incorrect parameters. Because it's XLSX format (except if you assigned XLSX but you stored non-XLSX format...), you should transfer bytes, not characters. Share your code if you want us to look at it.
NB: I wonder how much % of developers by country are women (30% in US, other countries?)
User | Count |
---|---|
85 | |
7 | |
6 | |
4 | |
3 | |
3 | |
3 | |
3 | |
3 | |
2 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.