plugin.name=Sybase ASA Schema Object Editor
providerName=Eclipse Data Tools Platform
#msgwizard
category.function.name=Real time data functions
category.sp.name=Real time stored procedures
category.function.queue.name=Queue related functions
category.function.topic.name=Topic related functions
category.function.property.name = Property related functions
msgwizard.action.label=&Messaging
msgsend.name=Send a message
msgsend.description=Create a SQL construct to send a message to a queue
msgsend.example=Sends a message whose body is a SQLX-formatted \
representation of the SQL result set, returned by the SQL query to the \
specified endpoint:\n\n\
msgsend ((select * from pubs2..publishers FOR XML),\
'TIBCO_JMS:tcp://my_jms_host:7222?queue=queue.sample,'\
+'user=jms_user1,password=jms_user1_password')
msgrecv.name=Receive a message
msgrecv.description=Create a SQL construct to receive a message from a queue
msgrecv.example=Receives a message from the specified end_point, using the \
timeout option and specifying a message selector:\n\n\
msgrecv('my_jms_provider?queue=queue.sample',\
OPTION 'timeout=1000'\
MESSAGE SELECTOR 'correlationID = ''MSG_001''')
msgregistersubscription.name=Register a subscription
msgregistersubscription.description=Create a SQL construct to register a subscription
msgregistersubscription.example=Defines a subscription on the server, before issuing any topic related functions:\n\n\
exec sp_msgadmin 'register','subscription','subscription_1',\
'my_jms_provider?topic=topic.sample,user=user1,password=pwd',\
'Supplier=12345',null,'durable1','client1'
msgpublish.name=Publish a message
msgpublish.description=Create a SQL construct to publish a message to a topic
msgpublish.example=To publish messages, a subscription must be defined on the \
server to which the client is connected. Then the client server can publish a message to a specified \
subscription:\n\n\
msgpublish\
('Sending order', 'subscription_1',\
MESSAGE PROPERTY 'Supplier=12345')
msgsubscribe.name=Subscribe to a topic
msgsubscribe.description=Create a SQL construct to subscribe to a topic
msgsubscribe.example=Tells the JMS messaging provider to begin holding messages \
published to the topic registered as "subscription_1":\n\n\
msgsubscribe ('subscription_1')
msgconsume.name=Consume a message
msgconsume.description=Create a SQL construct to consume a message from a topic
msgconsume.example=Receives a message from the specified subscription:\n\n\
msgconsume('subscription_1', OPTION 'timeout=0')
msgunsubscribe.name=Unsubscribe from a topic
msgunsubscribe.description=Create a SQL construct to unsubscribe from a topic
msgunsubscribe.example=Tells the JMS messaging provider to stop holding messages \
published to the topic registered as "subscription_1":\n\n\
msgunsubscribe('subscription_1')
msgpropertylist.name=Get property list
msgpropertylist.description=Returns a string in the format of an option_string with all of the \
property attributes of msg_doc
msgpropertylist.example=To retrieve the list of properties belonging to a message, \
use one of the following examples:\n\n\
select msgproplist(@@msgproperties)
msgpropertycount.name=Get property count
msgpropertycount.description=Returns the number of properties, or attributes, in msg_doc
msgpropertycount.example=To retrieve the number of properties from \
the last message retrieved:\n\n\
select msgpropcount(@@msgproperties)
msgpropertyname.name=Get property name
msgpropertyname.description=Returns the name of msg_doc\'s Ith property, where I is the value of the \
integer parameter
msgpropertyname.example=This query returns null, because the 9th property does not exist:\n\n\
select msgpropname(9, @@msgproperties)
msgpropertyvalue.name=Get property value
msgpropertyvalue.description=Returns the value for the msg_doc property whose name equals prop_name
msgpropertyvalue.example=To retrieve the value of the 8th property:\n\n\
select msgpropvalue (msgpropname(8, @@msgproperties))
msgpropertytype.name=Get property type
msgpropertytype.description=Returns the message provider\'s property type for the msg_doc property \
whose name equals prop_name.
msgpropertytype.example=To retrieve the type of the 8th property:\n\n\
select msgpropvalue (msgpropname(8, @@msgproperties))



templates.sql.generic.contextType.name=SQL
templates.sql.asa.contextType.name=SQL-ASA
templates.sql.ase.contextType.name=SQL-ASE
templates.sql.ase15.contextType.name=SQL-ASE15
templates.sql.asiq.contextType.name=SQL-ASIQ

context.editingSQL.name= Editing SQL
context.editingSQL.description= Editing SQL Context

ActionDefinition.showSQLInfo.name= Show SQL Information
ActionDefinition.showSQLInfo.description= Shows the SQL information for the element at the cursor

sqlProblemName=SQL Syntax Validation Problem
sqlPortabilityName=SQL Portability Task

NewSQLFileWizard.name=SQL File
NewSQLFileWizard.desc=Create a new SQL file

OpenDeclarationAction.label=&Open Declaration
OpenDeclaration.tooltip=Open an Editor on the Selected Element

ActionDefinition.openEditor.name= Open Declaration
ActionDefinition.openEditor.description= Open an editor on the selected element

DatabaseManagement=Database Development
DatabaseManagement.Miscpage = Miscellaneous
DatabaseManagement.EditorTemplates=Templates
DatabaseManagement.Logging=Logging
DatabaseManagement.Perspective=Perspective

DatabaseManagement.Execute=Sybase Database Development
DatabaseManagement.ExecuteSQLFile=Execute SQL File
DatabaseManagement.BrowseExecute=Execute SQL File...
DatabaseManagement.BrowseExecute.tooltip=Choose a .sql File to Execute
DatabaseManagement.ASEFeatures=Enable ASE Features...
DatabaseManagement.ASEFeatures.tooltip=Enable ASE Features...

DatabaseManagement.ToggleComment=Togg&le Comment

DatabaseManagement.CodeAssist=Code Assist

DatabaseManagement.SQLEditor=SQL Editor

DatabaseManagement.SQLDebugger=SQL Debugger

PlanView.name=SQL Execution Plan
TablesView.name =Referenced Tables
Runas.sp = Stored procedure


com.sybase.stf.dmp.database.development=Database Development

NewSQLFileWizard.desc=Create a new SQL file

view.catagory.database.development=Sybase Database Development

view.catagory.database.debug=Sybase Database Debug

com.sybase.stf.dmp.debugger.preferences.sqlfile.name=SQL Files
com.sybase.stf.dmp.debugger.preferences.ExportFormatPreferencePage.ExportFormat=Export Format

category.datatools.name=Database Tools
category.datatools.description=Database Development tools
DatabaseManagement.command.explain=Get Execution Plan
DatabaseManagement.command.execute=Execute All
DatabaseManagement.command.execute.select=Execute Selected Text
DatabaseManagement.command.run=Run
DatabaseManagement.command.debug=Debug
DatabaseManagement.command.createtemptable=Create Temp Table
DatabaseManagement.command.newevent=Insert Event
DatabaseManagement.command.newfunc=Insert Function
DatabaseManagement.command.newproc=Insert Procedure
DatabaseManagement.command.newtrigger=Insert Trigger
DatabaseManagement.command.pasteselect=Insert SELECT Statement
DatabaseManagement.command.pasteinsert=Insert INSERT Statement
DatabaseManagement.command.pastedelete=Insert DELETE Statement
DatabaseManagement.command.pasteupdate=Insert UPDATE Statement
DatabaseManagement.command.asemessage=Real-time Messaging Wizard
DatabaseManagement.command.savetodb=Save to Database
DatabaseManagement.command.refresh=Refresh from Database
DatabaseManagement.command.attach=Attach Connection Profile
DatabaseManagement.command.saveAsTemplate=Save as Template
DatabaseManagement.ConnectionOptions=Connection Level Options
DatabaseManagement.SQLResultsView=SQL Results View
DatabaseManagement.QueryPlan=Query Plan

SQLEditor.action.messaging=Real-time &Messaging Wizard...
SQLEditor.action.create.temp.table.label=&Create Temporary Table...

asa_rows_view=ASA Trigger Rows

#procedural object form editors
Introduction=Introduction

sp.editor.heading=Stored Procedure Editor
sp.editor.desc=This editor allows you to edit the stored procedure's definition and control the privileges assigned to this object.

func.editor.heading=User Defined Function Editor
func.editor.desc=This editor allows you to edit the user-defined function's definition and control the privileges assigned to this object.

trigger.editor.heading=Trigger Editor
trigger.editor.desc=This editor allows you to edit the trigger's definition.

event.editor.heading=Event Editor
event.editor.desc=This editor allows you to edit the event's definition.

view.editor.heading=View Editor
view.editor.desc=This editor allows you to view the columns and definition of a view and control the privileges assigned to this object.

index.editor.heading=Index Editor
index.editor.desc=This editor is used to edit or view the index. The following informations are included for editing: General, Columns, DDL.

table.editor.heading=Table Schema Editor
table.editor.desc=This editor allows user to edit the definition of a table, including columns, constraints, privileges and storage option; Also, the user can view the DDL of the table while editing it. After editing a table, the user can either save it to the database, or save the delta DDL scripts into a SQL file.

temptable.editor.heading=Global Temporary Table Schema Editor
temptable.editor.desc=This editor allows user to edit the definition of a global temporary table, including columns, constraints, privileges and storage option; Also, the user can view the DDL of the table when editing it. After editing a table, the user can either save it to the database, or save the delta DDL scripts into a SQL file.

udd.editor.heading=User Defined Type Editor
udd.editor.desc=This editor is used to view user defined type object. The following informations are included for editing: General and DDL.

#commands
asatablecreation.command.name=Create an SQL Anywhere table
General.page.name=General
Columns.page.name=Columns
Source.page.name=Source
Debug.page.name=Debug
Permissions.page.name=Permissions
Miscellaneous.page.name=Miscellaneous
Triggers.page.name=Triggers
Indexes.page.name=Indexes
Storage.page.name=Storage
Constraints.page.name=Constraints