Print label image in PDF format returned by Web Service XML string.
Hi Experts,
I have a scenario, where I am sending delivery details through IDOC and receives some labels to print in response from SAP PI. I am planning to print those labels from the inbound proxy.Is there any standard function module to print? I have gone through some function modules but no luck..could anybody help me on this? Give me some sample code..
Hi Experts,
I have a scenario, where I am sending delivery details through IDOC and receives some labels to print in response from SAP PI. I am planning to print those labels from the inbound proxy.Is there any standard function module to print? I have gone through some function modules but no luck..could anybody help me on this? Give me some sample code..
Similar Messages
-
Print label image in GIF format returned by Web Service XML string.
Hi All
I have extremely interesting situations and have been struggling with this for a past week. I have been looking everywhere but nobody seems to have an answer. This is my last resort.
Detail -
I am consuming UPS web service from my ABAP program. Everything works fine until I have to print UPS label. The label image is returned to my ABAP program via XML by the UPS reply transaction as a GIF image.
When I download this image to my PC I can see it and print it, but for the love of god I cannot print this image from my ABAP program. The GIF image is passed to me as a binary data string it looks like bunch on numbers - (2133FFDGFGFGFHHu2026..) very long string about 89800 bites. I cannot use smart forms since smart form requires to have graphic stored in SAP before smart form print, so this is not possible. I need help figuring out how print GIF image form ABAP or any other SAP method dynamically. Any ideas are extremely appreciated. I am just puzzled that I cannot find any info on something like this. I cannot be the first one who needs to print GIF image in SAP.Hi all,
I understand this thread was started long back. But wanted to share this solution since I see the same question in many forums without any particular conclusive answer. So the steps I am explaining here, if it helps in some way, I will be really happy. I won't say this is the perfect solution. But it definitely helps us to print the images. This solution is infact implemented successfully in my client place & works fine.
And please note there may be better solutions definitely available in ECC6 or other higher releases. This solution is mainly for lesser versions, for people don't have ADOBE forms or other special classes.
Important thing here is binary string is converted to postscript here. So you need to make sure your printer supports postscripts. (Ofcourse, if anybody is interested, they can do their R&D on PCL conversion in the same way...and pls let me know). Once the binary data is converted to postscript, we are going to write it in the binary spool. so you will still see junk characters (or numberssss) in spool. But when you print it in postscript printer , it should work.
First step, assuming you have your binary data ready from tiff or pdf based on your requirement.
Basically below compress/decompress function modules convert the binary data from lt_bin (structure TBL1024) to target_tab (structure SOLIX). From Raw 1024 to Raw 255
DATA: aux_tab LIKE soli OCCURS 10. - temp table
Compress table
CALL FUNCTION 'TABLE_COMPRESS'
TABLES
in = lt_bin
out = aux_tab
EXCEPTIONS
compress_error = 1
OTHERS = 2.
Decompress table
CALL FUNCTION 'TABLE_DECOMPRESS'
TABLES
in = aux_tab
out = target_tab
EXCEPTIONS
compress_error = 1
table_not_compressed = 2
OTHERS = 3.
In my case, since I have to get it from archived data using function module, ARCHIV_GET_TABLE which gives RAW 1024, above conversion was necessary.
Second step: Application server temporary files for tif/postscript files.
We need two file names here for tif file & for converted postscript file. Please keep in mind, if you are running it in background, user should have authorization to read/write/delete this file.
Logical file name just to make sure the file name is maintainable. Hard code the file name if you don't want to use logical file name.
CALL FUNCTION 'FILE_GET_NAME'
EXPORTING
logical_filename = 'ABCD'
parameter_1 = l_title
parameter_2 = sy-datum
parameter_3 = sy-uzeit
IMPORTING
file_name = lv_file_name_init
EXCEPTIONS
file_not_found = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Now concatenate with the different extensions to get two different files.
CONCATENATE lv_file_name_init '.tif' INTO lv_file_name_tif.
CONCATENATE lv_file_name_init '.ps' INTO lv_file_name_ps.
Third step: Write the target_tab to tif file.
Open dataset for writing the tif file.
OPEN DATASET lv_file_name_tif FOR OUTPUT IN BINARY MODE.
IF NOT sy-subrc IS INITIAL.
RAISE open_failed.
ELSE.
LOOP AT target_tab INTO w_target_tab.
CATCH SYSTEM-EXCEPTIONS dataset_write_error = 1
OTHERS = 4.
TRANSFER w_target_tab TO lv_file_name_tif.
ENDCATCH.
IF NOT sy-subrc IS INITIAL.
RAISE write_failed.
ENDIF.
ENDLOOP.
CATCH SYSTEM-EXCEPTIONS dataset_cant_close = 1
OTHERS = 4.
CLOSE DATASET lv_file_name_tif.
ENDCATCH.
ENDIF.
Fourth Step: Convert the tiff file to postscript file.
This is the critical step. Create an external command (SM49/SM69) for this conversion. In this example, Z_TIFF2PS is created. Infact, I did get help from our office basis gurus in this. so I don't have the exact code of this unix script. You can refer the below link or may get some help from unix gurus.
http://linux.about.com/library/cmd/blcmdl1_tiff2ps.htm
Since my external command needs .ps file name and .tif file name as input, concatenate it & pass it as additional parameter. Command will take care of the conversion & will generate the .ps file.
CONCATENATE lv_file_name_ps lv_file_name_tif INTO lw_add SEPARATED BY space.
Call the external command with the file paths.
CALL FUNCTION 'SXPG_COMMAND_EXECUTE'
EXPORTING
commandname = 'Command name'
additional_parameters = lw_add
TABLES
exec_protocol = t_comtab.
Fifth step: Read the converted ps file and convert it to RAW 255.
DATA:lw_content TYPE xstring.
Open dataset for reading the postscript (ps) file
OPEN DATASET lv_file_name_ps FOR INPUT IN BINARY MODE.
Check whether the file is opened successfully
IF NOT sy-subrc IS INITIAL.
RAISE open_failed.
ELSE.
READ DATASET lv_file_name_ps INTO lw_content.
ENDIF.
Close the dataset
CATCH SYSTEM-EXCEPTIONS dataset_cant_close = 1
OTHERS = 4.
CLOSE DATASET lv_file_name_ps.
ENDCATCH.
Make sure you delete the temporary files so that you can reuse the same names again & again for next conversions.
DELETE DATASET lv_file_name_tif.
DELETE DATASET lv_file_name_ps.
Convert the postscript file to RAW 255
REFRESH target_tab.
CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
EXPORTING
buffer = lw_content
TABLES
binary_tab = target_tab.
Sixth step: Write the postscript data to binary spool by passing the correct print parameters.
IF NOT target_tab[] IS INITIAL.
PERFORM spo_job_open_cust USING l_device
l_title
l_handle
l_spoolid
lw_nast.
LOOP AT target_tab INTO w_target_tab.
PERFORM spo_job_write(saplstxw) USING l_handle
w_target_tab
l_linewidth.
ENDLOOP.
PERFORM spo_job_close(saplstxw) USING l_handle
l_pages.
IF sy-subrc EQ 0.
MESSAGE i014 WITH
'Spools for'(019) lw_final-vbeln
'created successfully.Check transaction SP01'(020).
ENDIF.
ENDIF.
Please note the parameters when calling function module RSPO_SR_OPEN. Change the print parameters according to your requirement. This is very important.
FORM spo_job_open_cust USING value(device) LIKE tsp03-padest
value(title) LIKE tsp01-rqtitle
handle LIKE sy-tabix
spoolid LIKE tsp01-rqident
lw_nast TYPE nast.
DATA: layout LIKE tsp01-rqpaper,
doctype LIKE tsp01-rqdoctype.
doctype = 'BIN'.
layout = 'G_RAW'.
CALL FUNCTION 'RSPO_SR_OPEN'
EXPORTING
dest = device "Printer name
LDEST =
layout = layout
NAME =
suffix1 = 'PDF'
SUFFIX2 =
COPIES =
prio = '5'
immediate_print = 'X'
immediate_print = lw_nast-dimme
auto_delete = ' '
titleline = title
RECEIVER =
DIVISION =
AUTHORITY =
POSNAME =
ACTTIME =
LIFETIME = '8'
append = ' '
coverpage = ' '
CODEPAGE =
doctype = doctype
ARCHMODE =
ARCHPARAMS =
TELELAND =
TELENUM =
TELENUME =
IMPORTING
handle = handle
spoolid = spoolid
EXCEPTIONS
device_missing = 1
name_twice = 2
no_such_device = 3
operation_failed = 4.
CASE sy-subrc.
WHEN 0.
PERFORM msg_v1(saplstxw) USING 'S'
'RSPO_SR_OPEN o.k., Spoolauftrag $'(128)
spoolid.
sy-subrc = 0.
WHEN 1.
PERFORM msg_v1(saplstxw) USING 'E'
'RSPO_SR_OPEN Fehler: Gerät fehlt'(129)
space.
sy-subrc = 1.
WHEN 2.
PERFORM msg_v1(saplstxw) USING 'E'
'RSPO_SR_OPEN Fehler: Ungültiges Gerät $'(130)
device.
sy-subrc = 1.
WHEN OTHERS.
PERFORM msg_v1(saplstxw) USING 'E'
'RSPO_SR_OPEN Fehler: $'(131)
sy-subrc.
sy-subrc = 1.
ENDCASE.
ENDFORM. "spo_job_open_cust
Thats it. We are done. If you open the spool, still you will see numbers/junk characters. if you print it in postscript printer, it will be printed correctly. If you try to print it PCL, you will get lot of pages wasted since it will print all junk characters. So please make sure you use postscript printer for this.
Extra step for mails (if interested):
Mails should work fine without any extra conversion/external command since it will be opened again using windows. So after the first step (compress & decompress)
Create attachment notification for each attachment
objpack-transf_bin = 'X'.
objpack-head_start = 1.
objpack-head_num = 1.
objpack-body_start = lv_num + 1.
DESCRIBE TABLE lt_target_tab LINES objpack-body_num.
objpack-doc_size = objpack-body_num * 255.
objpack-body_num = lv_num + objpack-body_num.
lv_num = objpack-body_num.
objpack-doc_type = 'TIF'.
CONCATENATE 'Attachment_' l_object_id INTO objpack-obj_descr.
reclist-receiver = l_email.
reclist-rec_type = 'U'.
reclist-express = 'X'.
APPEND reclist.
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = docdata
put_in_outbox = 'X'
commit_work = 'X'
TABLES
packing_list = objpack
contents_txt = objtxt
contents_hex = target_tab
receivers = reclist
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8.
IF sy-subrc <> 0.
RAISE email_not_sent.
ENDIF.
COMMIT WORK.
Hope this helps. I am sure this (print/email both) can be improved further by removing some conversions/by using some other methods.Please check & let me know if you have any such suggestions or any other comments.
Regards,
Gokul
Edited by: Gokul R Nair on Nov 16, 2011 2:59 AM</pre>
Edited by: Gokul R Nair on Nov 16, 2011 3:01 AM
Edited by: Gokul R Nair on Nov 16, 2011 3:15 AM -
I can no longer print any document in PDF format. Not sure why
I can no longer print any document in PDF format. Not sure why? When I try to print, the document saves to my hard drive as a PDF and will not allow me to print? Never had this issue before. Any thoughts?
Print to file is in the main print dialog (on Acrobat 9.x) as opposed to under Advanced
-
Print BDS document(in PDF format) from SAP R/3
Hello ,
I have a requirement to print BDS document(in PDF format) from SAP R/3 without user interaction.
In simple way, if I execute the program - PDF document will get printed on local default printer.
Please help me if anybody worked on similar requirement.
Thank you very much,
LiliyaHi Liliya,
First you should create a smartform for BDS Layout and give output parameter like this..
wa_param-langu = sy-langu.
wa_param-no_dialog = 'X'.
wa_param-getotf = 'X'.
wa_param-DEVICE = ' '. " (here you can give the path of your printer)
lv_output_options-tdnewid = 'X'. "Print parameters,
lv_output_options-tddelete = space. "Print parameters,
lv_output_options-tdnoprev = 'X' .
lv_output_options-TDIMMED = 'X' . " it will give the immediate output of form in given output device
I hope it will help you.....
Enjoy... -
GTC Connector using SPML Format Provider and Web Services Transport Provide
Hello All,
Did any body create a GTC connector which uses SPML Format for Format Provider and Web Services format for Transport Provider?
Is there any doc which talks about the same?
I need to provision to a system over web services and I thought GTC using the above formats should be an easy approach. Am I right?
I was trying to follow:
http://download.oracle.com/docs/cd/E14571_01/doc.1111/e14309/devgtc.htm#BABDFDFE
But Iam getting lost in the immerse details.
Thanks in advance.Hi ,
I tried creating one and am getting the following error while provisioning:
SPML Response failed V2 schema validation
Th eoracle document says :Ensure that the SPML response returned by the target system conforms to the SPML V2 standard specification
Please help me with the same. What is it that needs to be done here.
Thanks
WIP -
How to retrieve the multiple rows data on PDF form in a web service method using WSDL DataConnection
How to retrieve the multiple rows data on PDF form in a web service method using WSDL DataConnection.
I have a multiple rows on PDF form. All rows have 4 textfields. I want to submit the multiple rows data to a method defiened in webservice.
Unable to retrieve the data in multiple rows within webservice method.Hi Paul,
I'm now able to save the retrieved xml in a hidden text field and create dynamic table, and I'm able to fill this table from the XML, but the problem is that I could not find the correct way to loop on the xml, what I'm trying to say, the table will have number of rows with the data of the first row only, so can you tell me the right way to loop on the xml!
this is my code
TextField1.rawValue=xmlData.document.rawValue;
xfa.datasets.data.loadXML(TextField1.rawValue, true, false);
for(var i=0; i<count; i++)
xfa.form.resolveNode("form1.P1.Table1.Row1["+i+"].Num").rawValue = xfa.datasets.data.record.num.value;
xfa.form.resolveNode("form1.P1.Table1.Row1["+i+"].Name").rawValue = xfa.datasets.data.record.name.value;
Table1.Row1.instanceManager.addInstance(true);
Thanks
Hussam -
What web service & xml will be used for deleting the packged epub/pdf file from Admin Console
What web service & xml will be used for deleting the packged epub/pdf file from Admin Console?
I am able to delete the files from Admin console directy but not able to get which web service is calling on deleting the file from admin console:
MangalHi Jim,
I tired following web service and xml to delete the packaged ebook but it is giving me error instead of response:
Web Service & XML
http://myserver_url/admin/ManageResourceKey
<request action="delete" auth="builtin" xmlns="http://ns.adobe.com/adept">
<nonce>" . $nonce . "</nonce>
<expiration>'. $expiration .'</expiration>
<resourceKey>
<resource>resource_id</resource>
<resourceItem>1</resourceItem>
</resourceKey>
</request>
Error Message
<error xmlns="http://ns.adobe.com/adept"
data="E_ADEPT_DATABASE http://myserver_url/admin/ManageResourceKey
Cannot%20delete%20or%20update%20a%20parent%20row:%20a%20foreign%20key%20constraint%20fails %20(`adept`.`distributionrights`,%20CONSTRAINT%20`distributionrights_ibfk_2`%20FOREIGN%20K EY%20(`resourceid`)%20REFERENCES%20`resourcekey`%20(`resourceid`))"/>
Magal Varshney -
Web-services.xml, why is security not enforced (format improved)
<pre>
Hi,
Sorry about the lack of formatting in previous post.
Running weblogic 8.1SP5.
Im having problems with the message style security, it doesn't seem to be enforced by weblogic.
The intention of web-services.xml (below) is that weblogic should authenticate the user according to credential info in the request header.
The console webservice testpage seem OK, it has user and password input boxes. But invocations fail with an obscure message involving
AssertionError: Bad password type: wsse:PasswordText
A simple Axis based client (see below) with no security tags in the header can invoke the service with no problems, would expect it to fail on athentication.
Did I miss something in web-services.xml or does something general need to be set up in the server for this to work as intended?
I am pulling my hair out on this one so any help will be greatly appreciated.
Rgds.
web-services.xml looks like this:
<security>
<user>
<name>test_user</name>
<password>test_password</password>
</user>
<spec:SecuritySpec xmlns:spec="http://www.openuri.org/2002/11/wsse/spec"
Namespace="http://schemas.xmlsoap.org/ws/2002/07/secext"
Id="_mySpec">
<spec:UsernameTokenSpec xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/07/secext"
PasswordType="wsse:PasswordText">
</spec:UsernameTokenSpec>
</spec:SecuritySpec>
</security>
<components>
<stateless-ejb name="CaseConverter">
<jndi-name path="CaseConverter"></jndi-name>
</stateless-ejb>
</components>
<operations xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<operation
component="CaseConverter"
name="convertToUpper"
method="convertToUpper"
in-security-spec="_mySpec"
>
The client looks like this (Axis based):
URL endpoint = new URL("http://127.0.0.1:7001/WebModule/CaseConverter");
Service service = new Service();
Call call = (Call)service.createCall();
call.setTargetEndpointAddress(endpoint);
call.setOperationName("convertToUpper");
call.addParameter("inputString",XMLType.XSD_STRING,ParameterMode.IN);
call.setReturnType(XMLType.XSD_STRING);
String result = (String) call.invoke(new Object[] { "hello!" });
System.out.println("Result: " + result);
</pre>Hi
I am also getting the same error. if anybody has some solution, pl. tell us -
Can objects returned from web services be cast to strongly typed objects?
Can objects returned from web services be cast to strongly
typed objects?
Last I tried this was with one of the beta of Flex2 and it
did not work. You had to use ObjectProxy or something like that...
ThanksPlease post this question in the CRM On Demand Integration Development forum.
-
Print Report Output in PDF Format
:-) Hiee E'body
I generated the output of a Report(developed in Report Builder 6i) in PDF format.
The output file is created properly and the PDF file gets displayed on the screen in proper format but when i try to print the PDF file it gets printed across the page instead of printing
it straight.
I have checked all page and printer settings but cannot find the reason for this.
If anybody is aware of the solution to this problem please guide me for the same.
Have a nice day !!
Thanking You ..
Vivek Kapoorhello,
sounds like you have a problem with portrait/landscape orientation of your document.
regards,
the oracle reports team --pw -
Printing report output in PDF format
Hi,
I want to know what are the settings needed to print a report output in PDF format, while executing the report from Oracle applications (Ver 11.5.6).
Report is executed as a concurrent request from Oracle applications.
Normally when we run the report from Oracle applications, output will be opened in a internet browser(IE) in HTML format. But I want the output to be opened in PDF format instead of HTML.
OS: Sun Solaris 2.8.
Thanks & Regards,
SarishHi Sarish
Please contact Oracle Support for an answer or to customise your application so that it prints a report output in PDF Format.
To get PDF output you must run report/job with DESFORMAT=PDF in the command line instead of DESFORMAT=HTML/HTMLCSS.
Regards
Sripathy -
Printing a Dashboard in pdf format with bigger font size ?
Hi,
When we are trying to print a Dashboard with few reports in pdf format, the font size seems to be very small in the print, and it is not readable.
Is there a way where in we can make the pdf's print a bit larger?
ThanksYes, at last I managed to change the look and feel of the generated PDF, including the font.
The attributes of all the objects that can be affected in the pdf output are kept in 2 .fst files: for general attributes in pdfstyle.fst and for pivottable attributes in pivot.pdf.
These 2 files are present for every skin, like Oracle_10 and Siebel77.
Try a global find and replace of 0.75pt to 4.0pt and 8pt to 20pt in pivot.fst. Save the file, restart the presentation server, log in again and try print to pdf of an existing pivot table. It will have thick borders and a big font.
I still do not understand that the same attributes are kept in 2 different files. For a color-change it is necassary to change the file views.css and the .fst file(s).
Good luck changing fonts and colors.
Otte -
Printing binary data in PDF format
HI all,
Any idea on how to print Binary content in a PDF format
I have read a PDF format from application server in a Binary format, I need to print the binary content on a printer in PDF format
Any help on this is appreciated <REMOVED BY MODERATOR>
Thanks
Aakash
Edited by: Alvaro Tejada Galindo on Jun 9, 2008 3:15 PMHi papick,
this may be easier than expected for a million dollar erp system:
You need a PDF printer.
When I played around with adobe interactive forms our basis guys created a new printer in SPAD with
Device Attributes
Device Type PDF1
Device Class Stabdard Printer
location PDF-Frontend printer = Standard printer for workstation
Access Method
Host Spool Access Method FF
Host printer PDF
Then need some expremimenting with Functions
RSPO_OUTPUT_DEVICEDATA Spool Output Control of an Internal Table with Formatted Data
or something alike (see function group SPOD)
Then you should be able to create an entry in spooler (SP01) with spool request type adobe pdf document.
Sorry, I don't have this problem, thus I did not check out the details yet.
But I'm convinced it should work that way because the ADS server creates a complete PDF binary and it can be printed using the above described printer - actually a HP Laserjet V was configured as frontend printer and it can print the pdf.
Regards,
Clemens -
Print, Save form in PDF Format from SAP
Hi,
The business users would like the ability to save, print a form, i.e. a Contract (VA42/43) in a PDF format. My understanding is, this feature/option is should be available through Goto menu through a feature/option PDF Display which opens the form in a PDF Viewer that allows the user to Print and Save the form in a PDF Format.
My question is what is required in SAP to make this feature/option available to an end user, is it a security role, a user parameter, a trigger of a function module...etc.....any help on this would be much appreciated
Thanks,
SeanHello Sean,
you can define local printer as PDF printer (e.g FREEPDF) and print your PDF forms to that printer.
To be able to generate a form, you can create new printer:
name: locl_pdf
device type: PDF1
Host spool access method: G - front end printing
This locl_pdf printer will generate a pdf and send to your local printer which is setup for PDF saving.
Hope it helps,
Evgenij -
Why is printing a drawing in PDF format so slow?
This is our first time using a wide-format printer (HP DesignJet 800PS). We receive construction drawings in PDF format. Printing size vary from 17" x 11" to 40" x 33". When I print a one page drawing, it takes about 20 minutes to print in normal mode (as opposed to Best or Draft). The printer is connected directly to our router via an ethernet cable. This is a small office with only 2 people connected to the router and this is the only printer connected to the network.
Is it normal that it takes this long to print a single page or is something wrong with our printing setup? When we sent multiple PDF drawings to the printshop in the past, they would be ready in minutes.
I am printing from a Windows XP computer using Adobe Reader 9.5.I am not sure about the printer driver. The driver name is HP DesignJet 800PS 42 PS3. How would I go about checking if the installed driver is a PostScript one since I wasn't the one who did the installation?
I should also mention that I've been experimenting with it the last couple of hours and while it prints alot faster in Draft mode, without seemingly losing vital details, it does take about 5 minutes for the printer to begin the actual printing.
I'm also struggling to get the drawings to print to scale and completely. The PDF file shows the page is 49" x 35.5". When I print it, despite having tried portrait and landscape, it will not print in the right direction. I'm thinking it might have to do with the page size that I selected. I selected ARCH E which is defined as being 36" x 48" and change the rotation to match but that's not working out as it cuts out part of the drawing. There is an option to scale the printing to the dimension I enter but should I really need to go through that everytime I print a drawing of different size?
Maybe you are looking for
-
How do i add more than one pdf at a time to profile manager books
How do I add more than one pdf at a time to profile manager books? When I browse to my pdf folder I can only select one pdf at a time. I have 500+ pdf files I need to add. Any help would be greatly appreciated.
-
Can the Iphone be connected directly to a camera and download the photos taken?
-
Error installing homesite5.5
My system somehow thinks that homesite is already installed. I launch the installation process and a dialog pops up with 3 options: modify, repair, uninstall. I've tried uninstalling. Homesite says it's successful. It isn't. I've tried repairing, tha
-
OWB 10gR2 Process Flow returning status = Complete and Result = Null
Hi, I have a process flows i ran lot of times with success (it shows status = complete and result = OK). It invokes a lot of mappings and other flows Sometimes one of invoked mapping or flows shows status = complete and result = Null and main process
-
Hi all, can we have Exchange 2013 DR on Azure? is it still not supported? Teka