Global educate quotes?
Pages doesn't seem to have a command to globally find all straight quotes and turn them into curly quotes. Is there a way to do this without resorting to another program? If not, what's the smallest, lightest-weight text manipulator program you would recommend?
The document was written in pure draft without curly quotes or em dashes or ellipses. Finding and replacing double dashes with em dashes, and triple periods with ellipses, is fine, but the curly quotes are difficult.
You may try to use this short script (it works well on 10.4.11)
--(SCRIPT]
set theText to the clipboard as text
tell application "Pages" to activate
tell application "System Events" to tell process "Pages"
keystroke theText
end tell
--[/SCRIPT]
copy the text to the clipboard.
For safe open a new blank document
Check that the preferences are set to "Use curly quotes"
run the script.
As it behaves as if you are typing, it will apply the curly quotes for you.
CAUTION: the keystroke feature works only on "standard ASCII" characters.
Yvan KOENIG (from FRANCE mardi 2 septembre 2008 10:01:44)
Similar Messages
-
Mail Per User Quotas Not Working
We just migrated from 10.9 server to the new 10.10 server and noticed that our per user mail quotas were no longer working. If I change the Server app - Mail setting - to have a global mail quota on it work, however, we have a few accounts that we need to leave unlimited and the per user quota will not override the global quota. So far we have had to leave the global quota disabled because of this.
Even without global quota turned off - trying to set per user mail limits is still not working. We are changing it thru the Server app and clicking users - selecting a user - then select edit mail options - and changing the setting for the limit size. No matter what we set it to - it will not work.
Does anyone know what command or how to change the per user quota limits from the command line? I found that Dovecotadm quota -u username shows you what the quota is, but I am stumped as how to change it via a command line or thru another method since the server app is not working.
Any help would be appreciated!
ps. Also posted my doveconf -n file below, but I am missing if there is anything not configured properly.
bash-3.2# dovecot -n
bash: dovecot: command not found
bash-3.2# doveconf -n
# 2.2.5: /Library/Server/Mail/Config/dovecot/dovecot.conf
# OS: Darwin 14.1.0 x86_64 hfs
aps_topic = com.apple.mail.XServer.a1c54f6d-f4ad-4431-b882-0f11570dd637
auth_mechanisms = cram-md5 plain login
auth_socket_path = /var/run/dovecot/auth-userdb
auth_username_format = %n
debug_log_path = /Library/Logs/Mail/mail-debug.log
default_internal_user = _dovecot
default_login_user = _dovenull
disable_plaintext_auth = no
first_valid_gid = 6
first_valid_uid = 6
imap_id_log = *
imap_id_send = "name" * "version" *
imap_urlauth_submit_user = submit
info_log_path = /Library/Logs/Mail/mail-info.log
log_path = /Library/Logs/Mail/mail-err.log
login_log_format_elements = user=<%u> method=%m rip=%r lip=%l mpid=%e %c
mail_access_groups = mail
mail_attribute_dict = file:/Library/Server/Mail/Data/attributes/attributes.dict
mail_location = maildir:/Library/Server/Mail/Data/mail/%u
mail_log_prefix = "%s(pid %p user %u): "
mail_plugins = quota zlib acl fts fts_sk
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date ihave
mdbox_rotate_size = 200 M
namespace acl-mailboxes {
list = children
location = maildir:/Library/Server/Mail/Data/mail/users/%%u:INDEX=/Library/Server/Mail/Dat a/mail/shared/%%u
prefix = shared.%%u.
separator = .
subscriptions = no
type = shared
namespace inbox {
inbox = yes
location =
mailbox Drafts {
special_use = \Drafts
mailbox Junk {
special_use = \Junk
mailbox Sent {
special_use = \Sent
mailbox "Sent Messages" {
special_use = \Sent
mailbox Trash {
special_use = \Trash
prefix =
namespace list-archives {
list = children
location = maildir:/Library/Server/Mail/Data/listserver/messages/archive/lists/%%u:INDEX=/ Library/Server/Mail/Data/listserver/messages/archive/shared/%%u
prefix = archives.%%u.
separator = .
subscriptions = no
type = shared
passdb {
driver = od
passdb {
args = /Library/Server/Mail/Config/dovecot/submit.passdb
driver = passwd-file
plugin {
acl = vfile:/Library/Server/Mail/Config/dovecot/global-acls:cache_secs=300
acl_shared_dict = file:/Library/Server/Mail/Data/shared/shared-mailboxes
fts = sk
quota = maildir:User quota
quota_warning = storage=100%% quota-exceeded %u
quota_warning2 = storage=85%% quota-warning %u
sieve = /Library/Server/Mail/Data/rules/%u/dovecot.sieve
sieve_dir = /Library/Server/Mail/Data/rules/%u
stats_refresh = 30 secs
stats_track_cmds = yes
protocols = imap lmtp sieve pop3
quota_full_tempfail = yes
service auth {
extra_groups = _keytabusers
idle_kill = 15 mins
unix_listener auth-userdb {
user = _dovecot
service dns_client {
unix_listener dns-client {
mode = 0600
service imap-login {
inet_listener imap {
port = 143
inet_listener imaps {
port = 993
ssl = yes
service_count = 0
service imap {
client_limit = 5
process_limit = 200
service_count = 0
service indexer-worker {
user = _dovecot
service lmtp {
unix_listener lmtp {
mode = 0600
service managesieve-login {
inet_listener sieve {
port = 4190
service pop3-login {
inet_listener pop3 {
port = 110
inet_listener pop3s {
port = 995
ssl = yes
service pop3 {
client_limit = 5
process_limit = 200
service_count = 0
service quota-exceeded {
executable = script /Applications/Server.app/Contents/ServerRoot/usr/libexec/dovecot/quota-exceeded .sh
unix_listener quota-exceeded {
group = mail
mode = 0660
user = _dovecot
user = _dovecot
service quota-warning {
executable = script /Applications/Server.app/Contents/ServerRoot/usr/libexec/dovecot/quota-warning. sh
unix_listener quota-warning {
group = mail
mode = 0660
user = _dovecot
user = _dovecot
service stats {
fifo_listener stats-mail {
mode = 0600
user = _dovecot
ssl = required
ssl_ca = </etc/certificates/mail.maxxx.com.3524D1A33970C65E8A8DFF78E757DDE3C66AED10.chai n.pem
ssl_cert = </etc/certificates/mail.maxxx.com.3524D1A33970C65E8A8DFF78E757DDE3C66AED10.cert .pem
ssl_cipher_list = ALL:!LOW:!SSLv2:!EXP:!aNULL:!ADH:!eNULL
ssl_key = </etc/certificates/mail.maxxx.com.3524D1A33970C65E8A8DFF78E757DDE3C66AED10.key. pem
ssl_key_path = /etc/certificates/mail.maxxx.com.3524D1A33970C65E8A8DFF78E757DDE3C66AED10.key.p em
userdb {
args = partition=/Library/Server/Mail/Config/dovecot/partition_map.conf global_quota=0 enforce_quotas=yes
driver = od
userdb {
args = /Library/Server/Mail/Config/dovecot/submit.passdb
driver = passwd-file
verbose_proctitle = yes
protocol lmtp {
mail_plugins = quota zlib acl fts fts_sk sieve
protocol lda {
mail_plugins = quota zlib acl fts fts_sk sieve push_notify
protocol imap {
mail_max_userip_connections = 20
mail_plugins = quota zlib acl fts fts_sk imap_acl imap_quota imap_zlib
protocol pop3 {
mail_max_userip_connections = 6I guess the problem didn't resolve itself, rather it has revealed that it is intermittent (my favorite kind).
What could made a message sent to a legitimate alias username not get picked up during the imap connection. I know the smtp server accepted the message (see logs above). -
I am unable to turn off “smart quotes” (for the purpose of entering computer code). I have unchecked the box in System Preferences > Language > Keyboard, and in Safari and Mail under the Edit Menu > Substitutions (also in Word and TextEdit), but the smart or ”curly quotes“ continue to appear in each application. Is there any way to fix this in Mavericks? I am running OS X 10.9.3
TL;DR: AFAIK, nobody tries to use Microsoft Word for programming in Python, or programming in general, and TextEdit is dicy here at best.
slps01 wrote:
red_menace:
That's my problem: no matter how I set the preferences in the applications, the smart quotes won't go away.
There is clearly an issue with smart quotes in your configuration. The global smart quotes setting is not being honored, nor is any local setting that might exist.
Which particular application are you using to edit your Python code when this problem arises?
(As with programming in general, details matter here.)
Did the tools you are using also get restarted after the global settings were changed?
Why ask this stuff? This information will allow folks to see if there's something else going on within that particular application, and it's also because there are text tools around that just won't create text files that the Python interpreter can process — whatever you're using here is probably closer to creating a plain-text file than some, as you're noticing the smart quotes here, though. Of what you've mentioned so far, Microsoft Word is not known for its ability to create ASCII or UTF-8 text files, and TextEdit is dicy here at best as that tool is quite fond of using RTF formats.
But if it's Word or TextEdit you're using? That won't work at all well. TextWrangler (free) is a common choice for folks that prefer a GUI editor, or MacVim (free) or whatever emacs is current (also free) or other such if you'd prefer a more advanced editor. (Note: vim and emacs are much more cryptic, and much more powerful editors.) Or use the included nano editor (has an on-screen list of commands), or the integrated vim or emacs editors at the command line. There are also Python IDE packages around, as well. (Xcode doesn't support Python, though there are reports of some success with it.) These tools all work, and these tools all produce the sorts of sequential text files that the compilers and interpreters can process. In some cases, these tools also provide syntax highlighting and other features, which can be very useful when coding, too. -
TryParse not passing correct values?
All,
I'm trying to parse text box input to an integer. Then based on the value of that integer a sub will set values for various other variables (integers). Then the integers that are obtained from the sub are passed to a sb.appendline.
I am doing this for about 20 text boxes. However, sometimes it works and sometimes it doesn't. Sometimes every line in the text file will contain the correct quotas (integers). Sometimes the first line in the text file contains
all zeros for the quotas and the rest of the lines in the text file contain the correct quotas. Sometimes all of the lines will contain either incorrect values for the quotas or all zeros for the quotas.
I am baffled as to why. Any help would be greatly appreciated.
James
Public Class Form1
Public inBW As Integer
Public outBW As Integer
Public inTCP As Integer
Public inUDP As Integer
Public inICMP As Integer
Public inIGMP As Integer
Public outTCP As Integer
Public outUDP As Integer
Public outICMP As Integer
Public outIGMP As Integer
Public tempInt As Integer
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim FileName As String
Dim FileNameAndPath As String
FileName = "Test.txt"
FileNameAndPath = IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, FileName)
Dim sb As New System.Text.StringBuilder
'Get Bandwidth 1 Quotas
Integer.TryParse(txtInboundBW1.Text, inBW)
Integer.TryParse(txtOutboundBW1.Text, outBW)
Get_Quotas()
'Write Bandwidth 1 quotas to file
sb.AppendLine(("create Quotas -bw_in ") & txtInboundBW1.Text & (" -bw_out ") & txtOutboundBW1.Text & (" -in_tcp_quota " & inTCP & " -in_udp_quota " & inUDP & " -in_icmp_quota " & inICMP & " -in_igmp_quota " & inIGMP & " -out_tcp_quota " & outTCP & " -out_udp_quota " & outUDP & " -out_icmp_quota " & outICMP & " -out_igmp_quota " & outIGMP))
'Get Bandwidth 2 Quotas
Integer.TryParse(txtInboundBW2.Text, inBW)
Integer.TryParse(txtOutboundBW2.Text, outBW)
Get_Quotas()
'Write Bandwidth 2 quotas to file
sb.AppendLine(("create Quotas -bw_in ") & txtInboundBW2.Text & (" -bw_out ") & txtOutboundBW2.Text & (" -in_tcp_quota " & inTCP & " -in_udp_quota " & inUDP & " -in_icmp_quota " & inICMP & " -in_igmp_quota " & inIGMP & " -out_tcp_quota " & outTCP & " -out_udp_quota " & outUDP & " -out_icmp_quota " & outICMP & " -out_igmp_quota " & outIGMP))
SaveFileDialog1.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.Desktop
SaveFileDialog1.FileName = FileName
SaveFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"
If SaveFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
IO.File.WriteAllText(SaveFileDialog1.FileName, sb.ToString)
Process.Start(SaveFileDialog1.FileName)
End If
End Sub
Public Sub Get_Quotas()
'5,000 kbps = 80,50,10,10
'10,000 kbps = 75,50,9,9
'100,000 kbps= 75,50,2,2
'1,000,000 kbps= 75,50,1,1
'10,000,000 kbps= 75,50,1,1
'40,000,000 kbps= 75,50,1,1
If inBW > 0 And inBW <= 5000 Then
inTCP = 80
inUDP = 50
inICMP = 10
inIGMP = 10
End If
If outBW > 0 And outBW <= 5000 Then
outTCP = 80
outUDP = 50
outICMP = 10
outIGMP = 10
End If
If inBW > 5000 And inBW <= 10000 Then
inTCP = 70
inUDP = 50
inICMP = 9
inIGMP = 9
End If
If outBW > 5000 And outBW <= 10000 Then
outTCP = 70
outUDP = 50
outICMP = 9
outIGMP = 9
End If
If inBW > 10000 And inBW <= 100000 Then
inTCP = 70
inUDP = 50
inICMP = 2
inIGMP = 2
End If
If outBW > 10000 And outBW <= 100000 Then
outTCP = 70
outUDP = 50
outICMP = 2
outIGMP = 2
End If
If inBW > 100000 And inBW <= 4000000 Then
inTCP = 70
inUDP = 50
inICMP = 1
inIGMP = 1
End If
If outBW > 100000 And outBW <= 4000000 Then
outTCP = 70
outUDP = 50
outICMP = 1
outIGMP = 1
End If
End Sub
End ClassVersion with XML comments (IntelliSense support):
Option Strict On
Option Explicit On
Option Infer Off
Namespace James
Public Class BandwidthPolicy
''' <summary>
''' An enumerator for the policy type (currently five).
''' </summary>
''' <remarks></remarks>
Public Enum PolicyType
Global_Policy
Web_Policy
Mail_Policy
FTP_Policy
DNS_Policy
End Enum
Private _global_PolicyQuota As BandwidthQuota
Private _web_PolicyQuota As BandwidthQuota
Private _mail_PolicyQuota As BandwidthQuota
Private _fTP_PolicyQuota As BandwidthQuota
Private _dNS_PolicyQuota As BandwidthQuota
Public Sub New()
End Sub
''' <summary>
''' Gets the DNS policy quota.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property DNS_PolicyQuota As BandwidthQuota
Get
Return _dNS_PolicyQuota
End Get
End Property
''' <summary>
''' Gets the FTP policy quota.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property FTP_PolicyQuota As BandwidthQuota
Get
Return _fTP_PolicyQuota
End Get
End Property
''' <summary>
''' Gets the Global policy quota.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property Global_PolicyQuota As BandwidthQuota
Get
Return _global_PolicyQuota
End Get
End Property
''' <summary>
''' Gets the Mail policy quota.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property Mail_PolicyQuota As BandwidthQuota
Get
Return _mail_PolicyQuota
End Get
End Property
''' <summary>
''' Gets the Web policy quota.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property Web_PolicyQuota As BandwidthQuota
Get
Return _web_PolicyQuota
End Get
End Property
''' <summary>
''' A method to set the policy quota for any of the policy types.
''' This method requires that you have already created/initialized
''' the BandwidthQuota.
''' </summary>
''' <param name="type">The enumerator to indicate which policy type
''' to initialize.</param>
''' <param name="bq">The instance of PolicyType to set this policy
''' to.</param>
Public Sub SetPolicy(ByVal type As PolicyType, _
ByVal bq As BandwidthQuota)
Try
Select Case type
Case PolicyType.DNS_Policy
_dNS_PolicyQuota = bq
Case PolicyType.FTP_Policy
_fTP_PolicyQuota = bq
Case PolicyType.Global_Policy
_global_PolicyQuota = bq
Case PolicyType.Mail_Policy
_mail_PolicyQuota = bq
Case PolicyType.Web_Policy
_web_PolicyQuota = bq
End Select
Catch ex As Exception
Throw
End Try
End Sub
''' <summary>
''' A method to set the policy quota for any of the policy types.
''' This method will create/initialize the BandwidthPolicy for any
''' of the policy types.
''' </summary>
''' <param name="type">The enumerator to indicate which policy
''' type to initialize.</param>
''' <param name="bandwidthIn">The bandwidth input value.</param>
''' <param name="bandwidthOut">The bandwidth output value.</param>
''' <remarks></remarks>
Public Sub SetPolicy(ByVal type As PolicyType, _
ByVal bandwidthIn As Integer, _
ByVal bandwidthOut As Integer)
Try
Select Case type
Case PolicyType.DNS_Policy
_dNS_PolicyQuota = New BandwidthQuota(bandwidthIn, bandwidthOut)
Case PolicyType.FTP_Policy
_fTP_PolicyQuota = New BandwidthQuota(bandwidthIn, bandwidthOut)
Case PolicyType.Global_Policy
_global_PolicyQuota = New BandwidthQuota(bandwidthIn, bandwidthOut)
Case PolicyType.Mail_Policy
_mail_PolicyQuota = New BandwidthQuota(bandwidthIn, bandwidthOut)
Case PolicyType.Web_Policy
_web_PolicyQuota = New BandwidthQuota(bandwidthIn, bandwidthOut)
End Select
Catch ex As Exception
Throw
End Try
End Sub
''' <summary>
''' A method which will return a formatted string indicating the
''' values of the BandwidthQuota for any of the policy types.
''' </summary>
''' <param name="type">The enumerator to indicate which policy type
''' to retrieve.</param>
''' <param name="throwIfNotInitialized">OPTIONAL: A boolean value
''' indicating whether or not to throw an exception if the policy
''' type chosen has not been initialized. Default: False.</param>
''' <returns></returns>
''' <remarks></remarks>
Public Function GetFormattedString(ByVal type As PolicyType, _
Optional ByVal throwIfNotInitialized As Boolean = False) As String
Dim retVal As String = String.Empty
Try
Dim bq As BandwidthQuota
Select Case type
Case PolicyType.DNS_Policy
If _dNS_PolicyQuota.BW_In > 0 AndAlso _dNS_PolicyQuota.BW_Out > 0 Then
bq = _dNS_PolicyQuota
With bq
retVal = _
String.Format("create DNSPolicy" & _
" -bw_in {0}" & _
" -bw_out {1}" & _
" -in_tcp_quota {2}" & _
" -in_udp_quota {3}" & _
" -in_icmp_quota {4}" & _
" -in_igmp_quota {5}" & _
" -out_tcp_quota {6}" & _
" -out_udp_quoata {7}" & _
" -out_icmp_quota {8}" & _
" -out_igmp_quota {9}", _
.BW_In, .BW_Out, .TCP_In, _
.UDP_In, .ICMP_In, .IGMP_In, _
.TCP_Out, .UDP_Out, .ICMP_Out, _
.IGMP_Out)
End With
Else
If throwIfNotInitialized Then
Throw New ArgumentException("The DNS policy has not been initialized.")
End If
End If
Case PolicyType.FTP_Policy
If _fTP_PolicyQuota.BW_In > 0 AndAlso _fTP_PolicyQuota.BW_Out > 0 Then
bq = _fTP_PolicyQuota
With bq
retVal = _
String.Format("create FTPPolicy" & _
" -bw_in {0}" & _
" -bw_out {1}" & _
" -in_tcp_quota {2}" & _
" -in_udp_quota {3}" & _
" -in_icmp_quota {4}" & _
" -in_igmp_quota {5}" & _
" -out_tcp_quota {6}" & _
" -out_udp_quoata {7}" & _
" -out_icmp_quota {8}" & _
" -out_igmp_quota {9}", _
.BW_In, .BW_Out, .TCP_In, _
.UDP_In, .ICMP_In, .IGMP_In, _
.TCP_Out, .UDP_Out, .ICMP_Out, _
.IGMP_Out)
End With
Else
If throwIfNotInitialized Then
Throw New ArgumentException("The FTP policy has not been initialized.")
End If
End If
Case PolicyType.Global_Policy
If _global_PolicyQuota.BW_In > 0 AndAlso _global_PolicyQuota.BW_Out > 0 Then
bq = _global_PolicyQuota
With bq
retVal = _
String.Format("create GlobalPolicy" & _
" -bw_in {0}" & _
" -bw_out {1}" & _
" -in_tcp_quota {2}" & _
" -in_udp_quota {3}" & _
" -in_icmp_quota {4}" & _
" -in_igmp_quota {5}" & _
" -out_tcp_quota {6}" & _
" -out_udp_quoata {7}" & _
" -out_icmp_quota {8}" & _
" -out_igmp_quota {9}", _
.BW_In, .BW_Out, .TCP_In, _
.UDP_In, .ICMP_In, .IGMP_In, _
.TCP_Out, .UDP_Out, .ICMP_Out, _
.IGMP_Out)
End With
Else
If throwIfNotInitialized Then
Throw New ArgumentException("The Global policy has not been initialized.")
End If
End If
Case PolicyType.Mail_Policy
If _mail_PolicyQuota.BW_In > 0 AndAlso _mail_PolicyQuota.BW_Out > 0 Then
bq = _mail_PolicyQuota
With bq
retVal = _
String.Format("create MailPolicy" & _
" -bw_in {0}" & _
" -bw_out {1}" & _
" -in_tcp_quota {2}" & _
" -in_udp_quota {3}" & _
" -in_icmp_quota {4}" & _
" -in_igmp_quota {5}" & _
" -out_tcp_quota {6}" & _
" -out_udp_quoata {7}" & _
" -out_icmp_quota {8}" & _
" -out_igmp_quota {9}", _
.BW_In, .BW_Out, .TCP_In, _
.UDP_In, .ICMP_In, .IGMP_In, _
.TCP_Out, .UDP_Out, .ICMP_Out, _
.IGMP_Out)
End With
Else
If throwIfNotInitialized Then
Throw New ArgumentException("The Mail policy has not been initialized.")
End If
End If
Case PolicyType.Web_Policy
If _web_PolicyQuota.BW_In > 0 AndAlso _web_PolicyQuota.BW_Out > 0 Then
bq = _web_PolicyQuota
With bq
retVal = _
String.Format("create WebPolicy" & _
" -bw_in {0}" & _
" -bw_out {1}" & _
" -in_tcp_quota {2}" & _
" -in_udp_quota {3}" & _
" -in_icmp_quota {4}" & _
" -in_igmp_quota {5}" & _
" -out_tcp_quota {6}" & _
" -out_udp_quoata {7}" & _
" -out_icmp_quota {8}" & _
" -out_igmp_quota {9}", _
.BW_In, .BW_Out, .TCP_In, _
.UDP_In, .ICMP_In, .IGMP_In, _
.TCP_Out, .UDP_Out, .ICMP_Out, _
.IGMP_Out)
End With
Else
If throwIfNotInitialized Then
Throw New ArgumentException("The Web policy has not been initialized.")
End If
End If
End Select
Catch ex As Exception
Throw
End Try
Return retVal
End Function
End Class
Public Structure BandwidthQuota
Private Enum InOut
Input
Output
End Enum
''' <summary>
''' Gets the minimum value for bandwidth.
''' </summary>
''' <remarks>Note that this is "hard-coded".</remarks>
Public Shared ReadOnly MinValue As Integer = 1
''' <summary>
''' Gets the maximum value for bandwidth.
''' </summary>
''' <remarks>Note that this is "hard-coded".</remarks>
Public Shared ReadOnly MaxValue As Integer = 40000000
Private _bW_In As Integer
Private _bW_Out As Integer
Private _tCP_In As Integer
Private _tCP_Out As Integer
Private _uDP_In As Integer
Private _uDP_Out As Integer
Private _iCMP_In As Integer
Private _iCMP_Out As Integer
Private _iGMP_In As Integer
Private _iGMP_Out As Integer
''' <summary>
''' The constructor for this structure.
''' </summary>
''' <param name="bandwidthIn">The value of the input bandwidth.</param>
''' <param name="bandwidthOut">The value of the output bandwidth.</param>
''' <remarks></remarks>
Public Sub New(ByVal bandwidthIn As Integer, _
ByVal bandwidthOut As Integer)
Try
If bandwidthIn < MinValue Then
Throw New _
ArgumentOutOfRangeException("Bandwidth In", _
"The minimum value is " & _
MinValue.ToString & _
" kBPS")
ElseIf bandwidthIn > MaxValue Then
Throw New _
ArgumentOutOfRangeException("Bandwidth In", _
"The maximum value is " & _
MaxValue.ToString & _
" kBPS")
ElseIf bandwidthOut < MinValue Then
Throw New _
ArgumentOutOfRangeException("Bandwidth Out", _
"The minimum value is " & _
MinValue.ToString & _
" kBPS")
ElseIf bandwidthOut > MaxValue Then
Throw New _
ArgumentOutOfRangeException("Bandwidth Out", _
"The maximum value is " & _
MaxValue.ToString & _
" kBPS")
Else
_bW_In = bandwidthIn
_bW_Out = bandwidthOut
ComputeValues(bandwidthIn, InOut.Input)
ComputeValues(bandwidthOut, InOut.Output)
End If
Catch ex As Exception
Throw
End Try
End Sub
''' <summary>
''' Gets the value of the input bandwidth.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property BW_In() As Integer
Get
Return _bW_In
End Get
End Property
''' <summary>
''' Gets the value of the output bandwidth.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property BW_Out() As Integer
Get
Return _bW_Out
End Get
End Property
''' <summary>
''' Gets the value for the input ICMP.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property ICMP_In() As Integer
Get
Return _iCMP_In
End Get
End Property
''' <summary>
''' Gets the value for the output ICMP.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property ICMP_Out() As Integer
Get
Return _iCMP_Out
End Get
End Property
''' <summary>
''' Gets the value for the input IGMP.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property IGMP_In() As Integer
Get
Return _iGMP_In
End Get
End Property
''' <summary>
''' Gets the value for the output IGMP.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property IGMP_Out() As Integer
Get
Return _iGMP_Out
End Get
End Property
''' <summary>
''' Gets the value for the input TCP.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property TCP_In() As Integer
Get
Return _tCP_In
End Get
End Property
''' <summary>
''' Gets the value for the output TCP.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property TCP_Out() As Integer
Get
Return _tCP_Out
End Get
End Property
''' <summary>
''' Gets the value for the input UDP.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property UDP_In() As Integer
Get
Return _uDP_In
End Get
End Property
''' <summary>
''' Gets the value for the output UDP.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property UDP_Out() As Integer
Get
Return _uDP_Out
End Get
End Property
Private Sub ComputeValues(ByVal value As Integer, _
ByVal io As InOut)
If value > 0 AndAlso value <= 5000 Then
SetValues(80, 50, 10, 10, io)
ElseIf value > 5000 AndAlso value <= 10000 Then
SetValues(75, 50, 9, 9, io)
ElseIf value > 10000 AndAlso value <= 100000 Then
SetValues(75, 50, 2, 2, io)
ElseIf value > 100000 AndAlso value <= 40000000 Then
SetValues(75, 50, 1, 1, io)
End If
End Sub
Private Sub SetValues(ByVal tcp As Integer, _
ByVal udp As Integer, _
ByVal icmp As Integer, _
ByVal igmp As Integer, _
ByVal io As InOut)
Select Case io
Case InOut.Input
_tCP_In = tcp
_uDP_In = udp
_iCMP_In = icmp
_iGMP_In = igmp
Case InOut.Output
_tCP_Out = tcp
_uDP_Out = udp
_iCMP_Out = icmp
_iGMP_Out = igmp
End Select
End Sub
End Structure
End Namespace
Still lost in code, just at a little higher level. -
Keeping mountpoints/attributes on a replicated (zoned=on) zfs filesystem
Hi,
I'm having to identical servers, one which is active and the other acts as a hot failover. Data on both servers should be identical. Both share the same IPs and hostnames. To ensure that I have data integrity I'm sending ZFS snapshots from the active server to the failover many times an hour, and one full snapshot every 24hrs.
The layout is like this (both servers are evidently identical)
global zone, mainly unused except by sysadmins, with one "production" zone
- in the zone I have a zpool :
- in the zpool I have pool/prodServer, mounted in /zones/prodSrv, which contains my production zone
- I also have pool/home-prodSrv , which is delegated to the zone, and mounted in /export/home in the zone.
It is important that I separate the /export/home from other data.
Since pool/home-prodSrv is set with the attribute zoned=on , it is not seen in the global with df -h (it is, of course seen with zfs list).
To replicate my data, in both global zones (active server and failover) I have a user called zfsman who sends / receive snapshots like this :
[from the active zone] :
sudo zfs snapshot pool/prodServer@full
ssh zfsman@FAILOVER sudo zfs destroy pool/prodServer (so that the full will succeed)
sudo zfs send pool/prodServer@full | ssh zfsman@FAILOVER sudo zfs recv pool/prodServer
Now, if I shutdown the active zone on the main server and start it up on the failover, I get a problem :
- pool/home-prodSrv is mounted over /export/home in the global zone
- quota/reservation/other attributes are unset
- pool/home-prodSrv is mounted in pool/prodServer in the production zone instead of /export/home
I tried this, from the active zone :
ssh zfsman@FAILOVER sudo zfs set mountpoint=/export/home pool/prodServer (it will complain that /export/home is already mounted, but no matter)
ssh zfsman@FAILOVER sudo zfs set zoned=on pool/prodServer
It works, but it just doesn't look/feel clean...
I'm obviously missing the way to keep the attributes on the receiving end as they are set in the sending zone.
Any idea, anybody, how to fix this ?
Regards,
Jeff
Edited by: J.F.Gratton on Nov 15, 2008 11:33 AMHi,
I'm having to identical servers, one which is active and the other acts as a hot failover. Data on both servers should be identical. Both share the same IPs and hostnames. To ensure that I have data integrity I'm sending ZFS snapshots from the active server to the failover many times an hour, and one full snapshot every 24hrs.
The layout is like this (both servers are evidently identical)
global zone, mainly unused except by sysadmins, with one "production" zone
- in the zone I have a zpool :
- in the zpool I have pool/prodServer, mounted in /zones/prodSrv, which contains my production zone
- I also have pool/home-prodSrv , which is delegated to the zone, and mounted in /export/home in the zone.
It is important that I separate the /export/home from other data.
Since pool/home-prodSrv is set with the attribute zoned=on , it is not seen in the global with df -h (it is, of course seen with zfs list).
To replicate my data, in both global zones (active server and failover) I have a user called zfsman who sends / receive snapshots like this :
[from the active zone] :
sudo zfs snapshot pool/prodServer@full
ssh zfsman@FAILOVER sudo zfs destroy pool/prodServer (so that the full will succeed)
sudo zfs send pool/prodServer@full | ssh zfsman@FAILOVER sudo zfs recv pool/prodServer
Now, if I shutdown the active zone on the main server and start it up on the failover, I get a problem :
- pool/home-prodSrv is mounted over /export/home in the global zone
- quota/reservation/other attributes are unset
- pool/home-prodSrv is mounted in pool/prodServer in the production zone instead of /export/home
I tried this, from the active zone :
ssh zfsman@FAILOVER sudo zfs set mountpoint=/export/home pool/prodServer (it will complain that /export/home is already mounted, but no matter)
ssh zfsman@FAILOVER sudo zfs set zoned=on pool/prodServer
It works, but it just doesn't look/feel clean...
I'm obviously missing the way to keep the attributes on the receiving end as they are set in the sending zone.
Any idea, anybody, how to fix this ?
Regards,
Jeff
Edited by: J.F.Gratton on Nov 15, 2008 11:33 AM -
How to do a global search in quoted messages?
Using Thunderbird 24.4.0 on Ubuntu. Is there any way to do a global search in quoted messages? I read https://developer.mozilla.org/en-US/docs/Mozilla/Thunderbird/gloda, section "Content whittlers". I take it from that description that it's a feature to exclude quoted message content from global search? Is there a way to enable global searching in quoted text?
Thanks for pointing there's a third way to search through messages, hidden deep in the Edit/Find submenu! The global search with CTRL-K seemed global enough to me, and was right in my face... I didn't even think of looking in the menus for more...
So this worked:
* Edit/Find/Search Messages
* Search for messages in (select my whole mailbox)
* Tick "Search subfolders"
* Criteria: Body contains
There you have it. It found all the messages in all the subfolders that contained the string, regardless of location in the body i.e. it found it in quoted text and everywhere else.
Thanks! -
How to globally change straight double quotes to curly open and close?
I am editing with InDesign (5.5) some documents created by others. I suddenly noticed that the double quote marks were straight, not curly, in one document and Find/Change does not seem to offer and option to distiguish the open (left) double quote mark from the right (close) when starting with double straight quotes. Any suggestions?
And--unrelated--why is so hard to get to a page where you can actually post a question?
Thanks!
JillSince the position of a double quotation mark determines its shape, it is easiest to use GREP with Find/Change. You can (1) find a straight quotation mark at the beginning of a word/phrase and change it to left quotation marks, and then (2) find a straight quotation mark at the end of a word/phrase and change it to right quotation marks.
(1)
Find what:
~"([\l\u\)[:punct:]])
This finds a straight quotation mark in front of any character or punctuation.
Change to:
\x{201C}$1
This puts a left quotation marks in front of what was behind the straight quotation mark.
(2)
Find what:
([\l\u\)[:punct:]])~"
This finds a straight quotation mark behind any character or punctuation.
Change to:
$1\x{201D}
This puts a left quotation mark behind what was behind the straight quotation mark.
I would find/change the first hits one at a time, and when you are confident that it works for your documents, go ahead and Change All. -
Quoting/threading phenomena in mail.app -- due to problems in incoming messages?
Folks:
Mail 5.1 on MacOS 10.7.x
I began using Mail.app when I installed 10.7, shortly after the initial release.
No problems with respect to unformatted email or replying to short, trivial length formatted message. For complex, on-going discussions I feel that consistent and reliable quoting and threading behavior are essential. But that is not happening in some cases. I'd like to figure out why, and what I might do to fix the issue.
(Note: I do not want to get into a discussion here of formatted versus unformatted email. Both have their pros and cons. Nor do I want to spend a lot of time debating this issue with my correspondents. As a matter of courtesy, I set Mail.app to respond using the same message format as the original message.)
When I reply to a formatted email, I notice that mail.app sometimes draws a dark grey box --with rounded corners-- around one or more incoming paragraphs, placing a circled "X" "close icon" at the upper left. I don't get it. To what does this correspond? Why does mail.app mark-off this text and offer a "close icon"? As far as I know I'm not doing anything that implies I might want to delete the text.
(Note: Rummaging around in the corresponding message source, it seems that these boxes correspond to blockquoted text in the received message.)
Editing within one of these boxes is really unpredictable. Sometimes I can select an insertion point and insert a line-break, in preparation of replying to the text just above. Sometimes nothing happens. Sometimes I can select text, and cut it. Sometimes nothing happens at all to the selected text.
Mail.app commonly doesn't correctly increase the quoting level in such paragraphs. Using
Format> Quote Level>Increase
to maintain threading history manually is fairly easy since I've defined a function-key shortcut, which works some of the time -- but the effect of this command is unpredictable. Sometimes this command deletes the selected text entirely. (Grrrrrr!) The workaround I've found is to select smaller chunks of text. In such cases, this command generally works correctly.
Meanwhile, messages from exactly one person --who uses gmail exclusively-- are displayed in a completely unique threaded format by mail.app. The entire short history of 5 messages from him are displayed on multiple virtual sheets in one message window, with the latest first. In one view, clicking on the "see more" link at the bottom of his messages unleashes a cool-looking accordion opening effect and displays my part of the thread. (I guess. I don't totally understand this display concept. But it looks very cool and seems to handle quoting and threading pretty well.)
What's going on?
My best guess is that mail.app is struggling with "inconsistencies" in the incoming messages from different people using various email clients. I seem to recall reading that email tech specs are a hodgepodge of evolving and contradictory standards. Is that correct? Is that the root of my issue?
Many of my correspondents are non-tekkies and/or non-affluent, and they use whatever email client they can afford. Some could be using really old email clients. That doesn't help, right? Are blockquotes a really archaic formatting measure?
When these problems occur, they can cost me a lot of time and trouble. It's really distracting to have to deal with portions of the incoming message disappear.
I don't think it is practical to persuade my correspondents to upgrade their email clients. Some of them have trouble simply setting the preferences to support quoting. Threading is a difficult concept for a few.
Any suggestions? Any mail.app preference settings I might try adjusting? Any add-ins? Is it possible to tell Mail.app "interpret all incoming blockquotes tags as simple breaks" or strip them entirely? Or ...?
TIAhaavee:
Thanks for your reply on this thread.
And thanks for the confirmation: Yes, often difficult, and completely unworkable in some cases.
To my surprise, I've been able to find very few people reporting similiar observations. Very little about this issue at all on the web.
I looked for command-key variations on Format --> Make Plain Text, hoping for a block action, but none I tried was any different.
Here is my current view of the issue:
• For formatted messages, each email client operates differently. If there is a standard it seems to be no more robust than "use simple HTML for formatted messages".
• The "can't insert" issue, as well as those mysterious rectangle-surrounded blocks, seems very correlated with the presence of html <div> sections in the message. It is awkward to experiment, so I've only done a limited amount. My observations so far:
-- I don't think you can insert text anywhere "inside" a <div>, and mail.app seems to treat <div> as a "sticky" attribute -- e.g/ very difficult/impossible to remove without deleting the text inside. The copy-style method doesn't seem to affect <div> tags.
-- Based on one case, it appears that message bodies composed of back-to-back <div> sections are impervious to inserts anywhere. (The email client used by one particular person with whom I've corresponded seems to build messages out of --you guessed it-- back-to-back <div> sections. Putting on my HTML coders hat -- I cannot see any sense at all in doing this. Smells to me like a kludge/hack, as you prefer.)
• What about an applicable mail.app add-in? I can find mail.app add-ins, but it seems the mail.app tech info (API) isn't public, so those that exist are based on guesswork about how it works. This means that add-ins must be re-tooled possibly for each new version of mail.app. Altogether, not encouraging for add-in developers. And, yes, consistent with that the range of functionality I've seen is rather limited. So, I've given up looking in the add-in category.
• Applescript has commands for controlling mail.app generally, but I didn't see anything approaching the level of function necessary to remove <divs> by global search-and-replace. (I'm far from an Applescript expert, so it is very possible I missed something.) Nor did I see any general command such as Clean up dodgy HTML in message. (I can dream!)
The only bit of progress I've had is finding TextSoap: http://www.unmarked.com/textsoap/ which may have promise. But I have had no time to evaluate it and it may be a month or so before I get a chance to check it out.
Looking at the upper right of the window in which I'm composing this message, there's a button "HTML" that lets me see --and edit-- the underlying HTML. On first glance, there's not enough functionality to, say, efficiently clean up all insert-resistant blocks in a message, but it looks practical to clean up individual blocks, and maybe that's all it would take. Though I imagine that the user base for these forums is not very different from that of mail.app, I'm guessing adding this function to mail.app isn't even a dim possibity. Oh, well...
I note you are happy with your solution, so I'll try see if a variation of it might help me.
Thanks,
h.2 -
Loading a text file into a global variable issue - really a global var?
From all the documentation and examples I can find, it appears that it would be
correct to create a global array variable [outside of any functions] to load image names into,
then use these images for a slideshow. I want to make the app dynamic, in that changing the text file gives a new set of images.
The global variable goes null [no values] after the load event listener. Why is that?
Isn't global, well global, and alive for the duration of the SWF?
PARAMS.TXT:
monthNames=January,February,March,April,May,June,July,August,September,October,November,De cember&dayNames=Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday
CODE:
var dNames:Array = new Array();
var mNames:Array = new Array();
var request:URLRequest = new URLRequest("images/params.txt");
var variables:URLLoader = new URLLoader();
variables.dataFormat = URLLoaderDataFormat.VARIABLES;
variables.addEventListener(Event.COMPLETE, completeHandler);
try
variables.load(request);
catch (error:Error)
trace("Unable to load URL: " + error);
trace("2 mNames 2: " + mNames[2]);
trace("2 dNames 3: " + dNames[3]);
stop();
function completeHandler(event:Event):void
var loader:URLLoader = URLLoader(event.target);
dNames = loader.data.dayNames.split(",");
mNames = loader.data.monthNames.split(",");
trace(loader.data.dayNames);
trace("1 mNames 2: " + mNames[2]);
trace("1 dNames 3: " + dNames[3]);
OUTPUT:
2 mNames 2: undefined
2 dNames 3: undefined
Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday
1 mNames 2: March
1 dNames 3: Wednesday
How do I access these values after loading from the external file, after the load?
Thanks in advance.The statement you quoted from whatever Adobe documentation is correct.
If you want to load the data into the arrays before anything else happens, then have anything else that happens execute via the completeHandler function... after the data is loaded and processed into the arrays.
the command: loadFile() executes before the trace("2:" +images[4]); command. The loadFile function is processed and the loading process BEGINS... but starting the loading does not delay the main processing from continuing down the line--the loading itself becomes a secondary/background task. The command was to execute the loadFile function and the processing of that function was completed. If you don't believe so, then add a trace...
function loadFile():void
vars.dataFormat = URLLoaderDataFormat.VARIABLES;
vars.addEventListener(Event.COMPLETE, onComplete, false, 0, true);
vars.load(new URLRequest("images/fnames.txt"));
trace("started loading");
If you add that trace, you should see that the loadFile function execution is completed and the next line in your code is then processed... trace(2....)
The addEventlistener does not stop anything. The addEventListener code is assigning a monitor, not a traffic controller... it is telling the monitor to indicate when the data has finished loading. It is not telling anything to stop program execution.
So if you want to wait until the data is loaded before you do anything else... it goes....
function onComplete(evt:Event):void
var urlVars:URLVariables = evt.target.data;
images = vars.data.images.split(",");
tnails = vars.data.thumbnails.split(",");
................HERE................. -
How can I replace smart quotes that have been entered into a form where the user has pasted from an MSWord document? I want to replace the smart quote with a simple apostrophe. I understand that the smart quote for a single quotation is represented by the following in Flex: ’
Thank you!If you use regular expressions, you could do it in a single line and much faster:
In the following example, only the first instance of "sh" (case-sensitive) is replaced:
var myPattern:RegExp = /sh/;
var str:String = "She sells seashells by the seashore.";
trace(str.replace(myPattern, "sch"));
// She sells seaschells by the seashore.
In the following example, all instances of "sh" (case-sensitive) are replaced because the g (global) flag is set in the regular expression:
var myPattern:RegExp = /sh/g;
var str:String = "She sells seashells by the seashore.";
trace(str.replace(myPattern, "sch"));
// She sells seaschells by the seaschore.
Dany -
Replacing quotes/apostrophes with smart quotes/apostrophes
In previous versions of Pages, when pasted content included stardard quotes or apostrophes you could do a quick replace with smart quotes/apostrophes simply by doing a find and replace. Not so with the new Pages 5.
Anyone figured out how to force Pages to do such a replace? Manually trying to do it on a long document is crazy.What's worse: I just did a global find and replace, trying to fix four dumb quotes in an entire document that I'd cut and pasted--and Pages turned every single smart quote into a dumb quote. In all 92 pages. 1,600 smart quotes dumbified. With no way for me to smarten them up again.
Then, because I'm just as dumb as my quotes, I did the same thing with my single quotes/apostrophes.
I know how I'll be spending my afternoon. -
Smart quotes messed up from ipad
question: it appears that in the round trips between pages osx and pages ipad, anything entered with apostrophe's or quote marks on the ipad does not use curly quotes (smart quotes). is there a simple way to globally change all marks in the file to the smart kind on the computer, and is there a way to get smart quote marks from ipad entered text?
i do understand how to set the preference on the laptop, but that doesn't change the straight quotes that already were entered back to curly, unless i go and delete each mark and reenter it.
i don't see any preference pane for the ipad version of pages to control smart quotes; the global preference for 'auto correction' might control smart quotes on the ipad, but that would be unworkable, since i routinely use words it doesn't recognize (languages not english, and just unusual english words). hopefully there is another way, or will be soon... -
FM8 Quotes/apostrophes revisited
I cannot use the '/" key with Smart Quotes on. I'm running FM 8.03 as part of the Tech Comm Suite under XP SP2. My maker.ini file reads <br /><br />; English curved quotes:<br />SmartQuotes=\xd4\xd5\xd2\xd3<br /><br />The version in Docs & Settings has no such section. <br /><br />Turning Smart Quotes off provides a partial resolution, as the "/' key works and I can use keyboard "shortcuts" to input the smart versions. <br /><br />These are the related cmds.cfg settings:<br /><br /><Command CharLeftDblQuote<br /> <Label Left Double Quote><br /> <Definition \xd2>><br /><br /><Command CharRightDblQuote<br /> <Label Right Double Quote><br /> <Definition \xd3>><br /><br /><Command SmartSingleQuote<br /> <ReservedLabel Long Smart Single Quote><br /> <ReservedLabel Undo Typing><br /> <KeySequence '><br /> <Definition \x400>><br /> <br /><Command SmartDoubleQuote<br /> <Label Smart Double Quote><br /> <KeySequence "><br /> <Definition \x401>><br /><br />What would happen if I deleted the .cache file?
What's worse: I just did a global find and replace, trying to fix four dumb quotes in an entire document that I'd cut and pasted--and Pages turned every single smart quote into a dumb quote. In all 92 pages. 1,600 smart quotes dumbified. With no way for me to smarten them up again.
Then, because I'm just as dumb as my quotes, I did the same thing with my single quotes/apostrophes.
I know how I'll be spending my afternoon. -
Error while creating Global temp table
Hi,
I am very new to PL/SQL so please excuse my question. I have the below query . I have to get a count between the source table and various target tables. I am creating a global temp table to store the counts. I am getting the below error for my following query :
Thanks for the help,
Petronas
----Query----
set serveroutput on
Declare
nm1 varchar2(200);
nm2 varchar2(200);
cnt1 number;
cnt2 number;
diff number;
totdiff number;
Begin
nm1 := null;
nm2:= null;
cnt1:= 0;
cnt2 := 0;
diff := 0;
totdiff := 0;
create GLOBAL TEMPORARY TABLE diff ( name1 varchar(200), name2 varchar2(200), diff number);
select count(*) into cnt1
from users_staging;
select count(*) into cnt2
from PROD.users;
nm1 := 'users_staging';
nm2 := 'PROD.users';
diff := cnt1 - cnt2;
insert into diff values (nm1,nm2,diff);
select count(*) into totdiff
from diff
where diff> 0 ;
dbms_output.enable(10000);
dbms_output.put_line('# of tables where difference is > 0 ' ||totdiff);
end;
Encountered the symbol "CREATE" when expecting one of the following:
begin case declare end exception exit for goto if loop mod
null pragma raise return select update while with
<an identifier> <a double-quoted delimited-identifier>
<a bind variable> << close current delete fetch lock insert
open rollback savepoint set sql execute commit forall merge
pipeHi,
"CREATE GLOBAL TEPORARY TABLE ..." is not a PL/SQL command; it is a SQL command only.
Create the table, using that statement, before running the PL/SQL block.
You can issue SQL statements from within PL/SQL using the EXECUTE IMMEDIATE command, but this is rarely a good idea.
I assume the PL/SQL code is meant to create the table and then populate it.
You should split those into two separate pieces of code. You'll only want to create the table once, no matter how many times you use it. I assume you'll want to populate it the same way many times. Remember, the "TEMPORARY" in "GLOBAL TEMPORARY TABLE" refers to the data, not the table. When you end a transaction (or a session, depending on whther you want "ON COMMIT DELETE ROWS" or "ON COMMIT PRESERVE ROWS"), the data disappears, but the now-empty stays, ready to be populated for the next transaction (or session).
Edited by: Frank Kulash on Aug 4, 2010 2:25 PM -
Hello Friends,
Really appreciate your help/inputs on the below Error Message encountered while running a Concurrent Program--using SOA:Same encountered in recently refreshed DEV instance, Can it be related to some Developement Instance Configuration related to SOA, as same working as expected in PROD.PLEASE ASSIST
Need your inputs on the Error Message we are getting which Invoking OSB Service.
"Error inside invoke_osb_service -> Error Code : -84Error Message :ORA-00084: global area must be PGA, SGA, or UGA "
Can you please review and confirm if the same encountered before or assist on the same:
XXFIN_AP_INVOICES_INT_IB_PKG.invoke_osb_service
-- Define the SOAP request according the the definition of the web service being called
l_soap_request :=
'<?xml version = "1.0" encoding = "UTF-8"?>'
|| '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:prox="http://OmnicareFinance/ProxyInput/">'
|| '<soapenv:Header/>'
|| '<soapenv:Body>'
|| '<prox:InboundProcess>'
|| '<Source_system>'||g_source_instance||'</Source_system>'
|| '<Run_mode>'||g_run_mode||'</Run_mode>'
|| '<Batch_key>'||g_batch_key||'</Batch_key>'
|| '<Request_id>'||g_request_id||'</Request_id>'
|| '<Invoice_Header_File_name>'||g_file_name||'</Invoice_Header_File_name>'
|| '<Invoice_Line_File_name>'||NULL||'</Invoice_Line_File_name>'
|| '<File_location>'||g_file_location||'</File_location>'
|| '</prox:InboundProcess>'
|| '</soapenv:Body>'
|| '</soapenv:Envelope>';
Oracle Apps Log File
-->Entering XXFIN_AP_INVOICES_INT_IB_PKG.invoke_osb_service
--> = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
-->Response> status_code: "200"
-->Response> reason_phrase: "OK"
-->Response> http_version: "HTTP/1.1"
-->Response From OSB: <?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header xmlns:prox="http://OmnicareFinance/ProxyInput/"/><soapenv:Body xmlns:prox="http://OmnicareFinance/ProxyInput/"><prox:InboundProcessResponse><status>E</status></prox:InboundProcessResponse></soapenv:Body></soapenv:Envelope>
-->OSB Response: E
-->Error inside invoke_osb_service -> Error Code : -84Error Message :ORA-00084: global area must be PGA, SGA, or UGA
--> = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
-->Entering XXFIN_AP_INVOICES_INT_IB_PKG.capture_error_info
THANKS
ANKURHi..
>
# symptom: ORA-00381: cannot use both new and old parameters for buffer cache size specification
# cause: Both db_block_buffers and db_cache_size parameters are defined in the init.ora (instance parameter file). The db_block_buffers parameter has been deprecated and has been maintained only for backward compatibility. The db_cache_size parameter is one of the size parameters which defines the size of the cache for buffers. These parameters cannot be combined. Setting this along with the Dynamic SGA parameters errors out.
>
For sga_target refer to [http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/initparams193.htm#REFRN10256]
which quotes
>
SGA_TARGET specifies the total size of all SGA components. If SGA_TARGET is specified, then the following memory pools are automatically sized:
*Buffer cache (DB_CACHE_SIZE)
* Shared pool (SHARED_POOL_SIZE)
* Large pool (LARGE_POOL_SIZE)
* Java pool (JAVA_POOL_SIZE)
* Streams pool (STREAMS_POOL_SIZE)
If these automatically tuned memory pools are set to non-zero values, then those values are used as minimum levels by Automatic Shared Memory Management. You would set minimum values if an application component needs a minimum amount of memory to function properly.
>
So, the what ever the value are set for the parameter will act as minimum value when sga_target is set.
HTH
Anand
Maybe you are looking for
-
Advice on client proxy generation (ABAP and SAP PI)
Hi, I've set up an ABAP client proxy using the wizard in transaction SE80 in the backend system, released it using transaction SOAMANAGER and tested that it works. I now want to compare this technical approach against the same scenario using a proxy
-
Unable to activate domains on solaris 10
Hi all, I have installed guardian 1.1 on my local machine (Win XP). I am using java 1.5_06. I was able to activate 9.2.1 domains on my machine, but not the domains running on Solaris 10. It keeps saying "The agent is not properly deployed to all runn
-
How to set domain name to a site that was developed using netbeans
I developed a website using netbeans.I want to give some DNS like site1.com to it.Where can i set that ? Thanks in advance
-
Multiple Assessments within one project
Hi, Currently working on a project where I'd like to have 3 assessments built in to the same project. The criteria I'd like to set is: On the first assessment, they need to pass to progress On the second they need to pass to progress On the third the
-
Gourp Policy software installation suddenly stopped working
My GPO'S were all in wonderful working order, I just imaged 30+ machines using the same policies with no problem. Now I have to deploy more machines but the GPO'S are not applying. I ran gpresult on one of the computers in question and get the mess