cancel
Showing results for 
Search instead for 
Did you mean: 

Can be generate Excel (.xlsx) file on FTP server from SAP itab data?

vinoyad
Explorer

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

Sandra_Rossi
Active Contributor
0 Kudos

1. You can put any kind of file on FTP server with ABAP

2. You can put any kind of file on FTP server with ABAP

3. Search the Web for examples of FTP_R3_TO_SERVER

FredericGirod
Active Contributor

Did you uncheck the parameter Character_Mode ?

vinoyad
Explorer
0 Kudos

Hi Frederic Girod,

Yes, I unchecked the parameter character_mode.

Please give solution . How can i create Excel (.xlsx) file on FTP server.

Thanks,

Vino Yad

Sandra_Rossi
Active Contributor
0 Kudos

If your code doesn't work, please post it and explain the symptoms about what doesn't work, so that some people can help you.

I tried to search for you, but most of the answers are incorrect because people don't understand what is the difference between text/character files (character mode) and binary files (byte mode).

This successful search returned an answer whose comment provides some code:

"call function 'FTP_R3_TO_SERVER'" "character_mode = abap_false" site:sap.com

PS: in byte mode, you must indicate the length (BLOB_LEN).

Sandra_Rossi
Active Contributor
0 Kudos

typo: BLOB_LENGTH

vinoyad
Explorer
0 Kudos

Hi Sandra Rossi,

I checked all types:

Please once check and give solution.

Like:

DATA: wrk_file TYPE char300.
CONCATENATE 'Vendor_Master_' day month year '_' sy-uzeit '.xlsx' INTO wrk_file.

1.

CALL FUNCTION 'FTP_R3_TO_SERVER'
EXPORTING
handle = g_dhdl
fname = wrk_file
* BLOB_LENGTH =
character_mode = 'X'
TABLES
* BLOB =
text = it_text[] "CONCATENATED MATERIAL DATA
EXCEPTIONS
tcpip_error = 1
command_error = 2
data_error = 3
OTHERS = 4.
IF sy-subrc <> 0. "FTP_R3_TO_SERVER
WRITE:/ 'File has not created on FTP Server'.
ELSE.
WRITE:/ 'File has created on FTP Server'.
ENDIF. "FTP_R3_TO_SERVER


2.

CALL FUNCTION 'FTP_R3_TO_SERVER'
EXPORTING
handle = g_dhdl
fname = wrk_file
blob_length = blob_len
character_mode = abap_false
TABLES
* blob = it_raw_data "lv_bin_data
text = it_text[] "it_final[] "CONCATENATED MATERIAL DATA
EXCEPTIONS
tcpip_error = 1
command_error = 2
data_error = 3
OTHERS = 4.
IF sy-subrc <> 0. "FTP_R3_TO_SERVER
WRITE:/ 'File has not created on FTP Server'.
ELSE.
WRITE:/ 'File has created on FTP Server'.
ENDIF. "FTP_R3_TO_SERVER


3.

CALL FUNCTION 'FTP_R3_TO_SERVER'
EXPORTING
handle = g_dhdl
fname = wrk_file
blob_length = blob_len
character_mode = abap_false
TABLES
blob = it_text[]
* text = it_text[] "CONCATENATED MATERIAL DATA
EXCEPTIONS
tcpip_error = 1
command_error = 2
data_error = 3
OTHERS = 4.
IF sy-subrc <> 0. "FTP_R3_TO_SERVER
WRITE:/ 'File has not created on FTP Server'.
ELSE.
WRITE:/ 'File has created on FTP Server'.
ENDIF. "FTP_R3_TO_SERVER

vinoyad
Explorer
0 Kudos

Hi sandra.rossi

If possible to generate Excel (.xlsx) file on FTP Server.

Please share a sample of code.

Because I tried all possibility. In Every time file is creating. But Excel (.xlsx) file is not openingpop1.png. (.csv) file is open.

I searched on web and also tried all solution of web. Then i posted here for any kind of help. If any thing is missing my code. Please tell, i correct & check.

Sandra_Rossi
Active Contributor
0 Kudos
The error "Excel cannot be open the file 'filename.xlsx' because the file format or file extension is not valid" means that either your code is wrong (the file is corrupted), or your file has not XLSX format.The first simple information you should tell us is how you generate the file, is it really XLSX format? If you indicate extension ".xlsx" then the format of the file should also be XLSX (Office Open XML).
But the name of your variable contains "text", so I guess you are not writing XLSX format, you are probably writing either CSV format (or tab-separated values). It's text so it should be transferred with character_mode = 'X', and the extension should not be ".xlsx" (maybe ".csv" or ".txt").
vinoyad
Explorer
0 Kudos

Hi sandra.rossi

Our Requirement is direct create .xlsx file on FTP server and open without any error & any rename.

So, Please share a sample of code.

How to convert itab data in xlsx format after that xlsx format data pass in FM 'FTP_R3_TO_SERVER'.

Thanks,

Vinod Yad

Sandra_Rossi
Active Contributor
0 Kudos

To create an XLSX file to contain anything, whatever it comes from internal table or anywhere else, there are many ways already discussed in the forum. I won't repeat all the many answers.

Accepted Solutions (0)

Answers (2)

Answers (2)

Sandra_Rossi
Active Contributor

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.
vinoyad
Explorer
0 Kudos

HI Sandra Rossi,

I used this sample of code.

Same issue is giving. Issue not resolved.

Please suggest .

Sandra_Rossi
Active Contributor
0 Kudos

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?

vinoyad
Explorer
0 Kudos

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

FredericGirod
Active Contributor
0 Kudos

Answer is only to propose a solution

(remove the Sir, Sandra is a Lady)

Sandra_Rossi
Active Contributor
0 Kudos

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?)

FredericGirod
Active Contributor
0 Kudos

sandra.rossi I am agree, this is really strange there is so few girls in development. This is not the case for functional team