Scan for string
HI erveryone,
I am working with the Scan from String fuction, but I have a problem. The string that I have as input is "temp=32.2", so I am using the Scan function as follows:
But as output 1 I have "temp=32.2" and 0 in the output 2.
Does anyone have an idea of how to separate "temp" in output1 and 32.2 in output2?
Thanks for your help
Raymundo Cassani
Solved!
Go to Solution.
The you need to program around it, for example as follows. There are many ways to do this...
LabVIEW Champion . Do more with less code and in less time .
Attachments:
ParseString.png 4 KB
Similar Messages
-
"scan from string" to timestamp doesn't work for 18:00:00 (6PM)
I just found a strange issue in LabVIEW. I hope I'm doing something silly, but I just may have found an unusual bug.
run the snippet below with the following for the input string: 03:00:00,18:00:00,17:00:00
Time converts fine for just about any other time EXCEPT 18:00:00 (6 PM) for which it is returned as 00:00:00 (midnight). If you even add a second to it (18:00:01) you get back the expected result.
Here's hoping I'm not loosing my mind
Matt Holt
Certified LabVIEW Architect
Solved!
Go to Solution.
Attachments:
TimeParseBug.vi 11 KBAs annoying as it may seem, this exact scenario is an abuse of the timestamp. A timestamp is meant to be used for absolute times. And that includes a date. As Ravens Fan already pointed out, the 0 seconds since January 1, 1904 GMT is used in all timestamp display routines to mean the canonical invalid timestamp and hence the timestamp control displays the default string indicating the actual date/time format rather than a specific date/time.
If you need an absolute timestamp, for instance because you do want to have a local time indication, although the date is not relevant, adding an offset of 86400 to all values would fix it once and for all. Now the timezone offset can't cause the timestamp to reach 0 ever, even if you reside west of GMT, and it will be fine (until you start to do timestamp arithmetic that involves subtraction of relative timespans, then you would have to make the offset big enough that this will never get an issue). The current date would serve as a nice offset for that, which would be MattH's last suggestion. Nice to see that the Scan from String routine actually does use the passed in timestamp as default value and only replaces the values it is configured to parse.
Rolf Kalbermatter
CIT Engineering Netherlands
a division of Test & Measurement Solutions -
Regular expression for Scan from String
I am trying to pick out three numbers with pattern $number1:number2:number3# from a stream, for instance 8.559509#$-1.686432:-2.427051:-7.281153#$-6.160924:-1.763356:
So far, I use "Scan from String" with Format string "$%f:%f:%f #". However I don't know how to ignore/delete the items before $. Would you like to help me with that? CheersYou know that your sequence of numbers begins with the $ and ends with the #, so you can separate them into groups first, then separate each number out.
Bill
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all. -
What is the Scan from string pattern for "match everything" ?
Hello,
Using Scan from string for a while, I know that %s only matches string up to a whitespace. And I also thought %[^] would match everything including whitespaces. But it turned out that it would stop at the closing square brace.
So, what is the real scan pattern for match everything including whitespaces ?What do you want the Scan From String to end on? Or are you just grabbing the rest of the string? If that is your scenario, then just use the "remaining string" output. It might help if you give a full example of a normal input string and EVERYTHING you want as an output.
-
ClamAV fails to scan for viruses in emails [CLAWS MAIL]
I've recently switched from Thunderbird to Claws Mail and ran into one small, but annoying, problem.
I want to use ClamAV + the clamav extension for claws mail to scan for viruses, however it does seem to have permission problems.
clamd is running, user and group clamav all have the relevant permissions as far as I can tell, however upon scanning my mail, I always end up with the following error:
Scanning error:
/home/username/.claws-mail/mimetmp/0000000e.mimetmp: lstat() failed: Permission denied. ERROR
Here's my clamd.conf:
## Please read the clamd.conf(5) manual before editing this file.
# Comment or remove the line below.
#Example
# Uncomment this option to enable logging.
# LogFile must be writable for the user running daemon.
# A full path is required.
# Default: disabled
LogFile /var/log/clamav/clamd.log
# By default the log file is locked for writing - the lock protects against
# running clamd multiple times (if want to run another clamd, please
# copy the configuration file, change the LogFile variable, and run
# the daemon with --config-file option).
# This option disables log file locking.
# Default: no
#LogFileUnlock yes
# Maximum size of the log file.
# Value of 0 disables the limit.
# You may use 'M' or 'm' for megabytes (1M = 1m = 1048576 bytes)
# and 'K' or 'k' for kilobytes (1K = 1k = 1024 bytes). To specify the size
# in bytes just don't use modifiers.
# Default: 1M
#LogFileMaxSize 2M
# Log time with each message.
# Default: no
LogTime yes
# Also log clean files. Useful in debugging but drastically increases the
# log size.
# Default: no
#LogClean yes
# Use system logger (can work together with LogFile).
# Default: no
#LogSyslog yes
# Specify the type of syslog messages - please refer to 'man syslog'
# for facility names.
# Default: LOG_LOCAL6
#LogFacility LOG_MAIL
# Enable verbose logging.
# Default: no
#LogVerbose yes
# Log additional information about the infected file, such as its
# size and hash, together with the virus name.
#ExtendedDetectionInfo yes
# This option allows you to save a process identifier of the listening
# daemon (main thread).
# Default: disabled
PidFile /run/clamav/clamd.pid
# Optional path to the global temporary directory.
# Default: system specific (usually /tmp or /var/tmp).
TemporaryDirectory /tmp
# Path to the database directory.
# Default: hardcoded (depends on installation options)
DatabaseDirectory /var/lib/clamav
# Only load the official signatures published by the ClamAV project.
# Default: no
OfficialDatabaseOnly yes
# The daemon can work in local mode, network mode or both.
# Due to security reasons we recommend the local mode.
# Path to a local socket file the daemon will listen on.
# Default: disabled (must be specified by a user)
LocalSocket /var/lib/clamav/clamd.sock
# Sets the group ownership on the unix socket.
# Default: disabled (the primary group of the user running clamd)
LocalSocketGroup clamav
# Sets the permissions on the unix socket to the specified mode.
# Default: disabled (socket is world accessible)
#LocalSocketMode 660
# Remove stale socket after unclean shutdown.
# Default: yes
#FixStaleSocket yes
# TCP port address.
# Default: no
#TCPSocket 3310
# TCP address.
# By default we bind to INADDR_ANY, probably not wise.
# Enable the following to provide some degree of protection
# from the outside world.
# Default: no
#TCPAddr 127.0.0.1
# Maximum length the queue of pending connections may grow to.
# Default: 200
#MaxConnectionQueueLength 30
# Clamd uses FTP-like protocol to receive data from remote clients.
# If you are using clamav-milter to balance load between remote clamd daemons
# on firewall servers you may need to tune the options below.
# Close the connection when the data size limit is exceeded.
# The value should match your MTA's limit for a maximum attachment size.
# Default: 25M
#StreamMaxLength 10M
# Limit port range.
# Default: 1024
#StreamMinPort 30000
# Default: 2048
#StreamMaxPort 32000
# Maximum number of threads running at the same time.
# Default: 10
#MaxThreads 20
# Waiting for data from a client socket will timeout after this time (seconds).
# Default: 120
#ReadTimeout 300
# This option specifies the time (in seconds) after which clamd should
# timeout if a client doesn't provide any initial command after connecting.
# Default: 5
#CommandReadTimeout 5
# This option specifies how long to wait (in miliseconds) if the send buffer is full.
# Keep this value low to prevent clamd hanging
# Default: 500
#SendBufTimeout 200
# Maximum number of queued items (including those being processed by MaxThreads threads)
# It is recommended to have this value at least twice MaxThreads if possible.
# WARNING: you shouldn't increase this too much to avoid running out of file descriptors,
# the following condition should hold:
# MaxThreads*MaxRecursion + (MaxQueue - MaxThreads) + 6< RLIMIT_NOFILE (usual max is 1024)
# Default: 100
#MaxQueue 200
# Waiting for a new job will timeout after this time (seconds).
# Default: 30
#IdleTimeout 60
# Don't scan files and directories matching regex
# This directive can be used multiple times
# Default: scan all
#ExcludePath ^/proc/
#ExcludePath ^/sys/
# Maximum depth directories are scanned at.
# Default: 15
#MaxDirectoryRecursion 20
# Follow directory symlinks.
# Default: no
#FollowDirectorySymlinks yes
# Follow regular file symlinks.
# Default: no
#FollowFileSymlinks yes
# Scan files and directories on other filesystems.
# Default: yes
#CrossFilesystems yes
# Perform a database check.
# Default: 600 (10 min)
#SelfCheck 600
# Execute a command when virus is found. In the command string %v will
# be replaced with the virus name.
# Default: no
#VirusEvent /usr/local/bin/send_sms 123456789 "VIRUS ALERT: %v"
# Run as another user (clamd must be started by root for this option to work)
# Default: don't drop privileges
User clamav
# Initialize supplementary group access (clamd must be started by root).
# Default: no
#AllowSupplementaryGroups no
# Stop daemon when libclamav reports out of memory condition.
#ExitOnOOM yes
# Don't fork into background.
# Default: no
#Foreground yes
# Enable debug messages in libclamav.
# Default: no
#Debug yes
# Do not remove temporary files (for debug purposes).
# Default: no
#LeaveTemporaryFiles yes
# Detect Possibly Unwanted Applications.
# Default: no
#DetectPUA yes
# Exclude a specific PUA category. This directive can be used multiple times.
# See http://www.clamav.net/support/pua for the complete list of PUA
# categories.
# Default: Load all categories (if DetectPUA is activated)
#ExcludePUA NetTool
#ExcludePUA PWTool
# Only include a specific PUA category. This directive can be used multiple
# times.
# Default: Load all categories (if DetectPUA is activated)
#IncludePUA Spy
#IncludePUA Scanner
#IncludePUA RAT
# In some cases (eg. complex malware, exploits in graphic files, and others),
# ClamAV uses special algorithms to provide accurate detection. This option
# controls the algorithmic detection.
# Default: yes
#AlgorithmicDetection yes
## Executable files
# PE stands for Portable Executable - it's an executable file format used
# in all 32 and 64-bit versions of Windows operating systems. This option allows
# ClamAV to perform a deeper analysis of executable files and it's also
# required for decompression of popular executable packers such as UPX, FSG,
# and Petite. If you turn off this option, the original files will still be
# scanned, but without additional processing.
# Default: yes
#ScanPE yes
# Executable and Linking Format is a standard format for UN*X executables.
# This option allows you to control the scanning of ELF files.
# If you turn off this option, the original files will still be scanned, but
# without additional processing.
# Default: yes
#ScanELF yes
# With this option clamav will try to detect broken executables (both PE and
# ELF) and mark them as Broken.Executable.
# Default: no
#DetectBrokenExecutables yes
## Documents
# This option enables scanning of OLE2 files, such as Microsoft Office
# documents and .msi files.
# If you turn off this option, the original files will still be scanned, but
# without additional processing.
# Default: yes
#ScanOLE2 yes
# With this option enabled OLE2 files with VBA macros, which were not
# detected by signatures will be marked as "Heuristics.OLE2.ContainsMacros".
# Default: no
#OLE2BlockMacros no
# This option enables scanning within PDF files.
# If you turn off this option, the original files will still be scanned, but
# without decoding and additional processing.
# Default: yes
#ScanPDF yes
## Mail files
# Enable internal e-mail scanner.
# If you turn off this option, the original files will still be scanned, but
# without parsing individual messages/attachments.
# Default: yes
#ScanMail yes
# Scan RFC1341 messages split over many emails.
# You will need to periodically clean up $TemporaryDirectory/clamav-partial directory.
# WARNING: This option may open your system to a DoS attack.
# Never use it on loaded servers.
# Default: no
#ScanPartialMessages yes
# With this option enabled ClamAV will try to detect phishing attempts by using
# signatures.
# Default: yes
#PhishingSignatures yes
# Scan URLs found in mails for phishing attempts using heuristics.
# Default: yes
#PhishingScanURLs yes
# Always block SSL mismatches in URLs, even if the URL isn't in the database.
# This can lead to false positives.
# Default: no
#PhishingAlwaysBlockSSLMismatch no
# Always block cloaked URLs, even if URL isn't in database.
# This can lead to false positives.
# Default: no
#PhishingAlwaysBlockCloak no
# Allow heuristic match to take precedence.
# When enabled, if a heuristic scan (such as phishingScan) detects
# a possible virus/phish it will stop scan immediately. Recommended, saves CPU
# scan-time.
# When disabled, virus/phish detected by heuristic scans will be reported only at
# the end of a scan. If an archive contains both a heuristically detected
# virus/phish, and a real malware, the real malware will be reported
# Keep this disabled if you intend to handle "*.Heuristics.*" viruses
# differently from "real" malware.
# If a non-heuristically-detected virus (signature-based) is found first,
# the scan is interrupted immediately, regardless of this config option.
# Default: no
#HeuristicScanPrecedence yes
## Data Loss Prevention (DLP)
# Enable the DLP module
# Default: No
#StructuredDataDetection yes
# This option sets the lowest number of Credit Card numbers found in a file
# to generate a detect.
# Default: 3
#StructuredMinCreditCardCount 5
# This option sets the lowest number of Social Security Numbers found
# in a file to generate a detect.
# Default: 3
#StructuredMinSSNCount 5
# With this option enabled the DLP module will search for valid
# SSNs formatted as xxx-yy-zzzz
# Default: yes
#StructuredSSNFormatNormal yes
# With this option enabled the DLP module will search for valid
# SSNs formatted as xxxyyzzzz
# Default: no
#StructuredSSNFormatStripped yes
## HTML
# Perform HTML normalisation and decryption of MS Script Encoder code.
# Default: yes
# If you turn off this option, the original files will still be scanned, but
# without additional processing.
#ScanHTML yes
## Archives
# ClamAV can scan within archives and compressed files.
# If you turn off this option, the original files will still be scanned, but
# without unpacking and additional processing.
# Default: yes
#ScanArchive yes
# Mark encrypted archives as viruses (Encrypted.Zip, Encrypted.RAR).
# Default: no
#ArchiveBlockEncrypted no
## Limits
# The options below protect your system against Denial of Service attacks
# using archive bombs.
# This option sets the maximum amount of data to be scanned for each input file.
# Archives and other containers are recursively extracted and scanned up to this
# value.
# Value of 0 disables the limit
# Note: disabling this limit or setting it too high may result in severe damage
# to the system.
# Default: 100M
#MaxScanSize 150M
# Files larger than this limit won't be scanned. Affects the input file itself
# as well as files contained inside it (when the input file is an archive, a
# document or some other kind of container).
# Value of 0 disables the limit.
# Note: disabling this limit or setting it too high may result in severe damage
# to the system.
# Default: 25M
#MaxFileSize 30M
# Nested archives are scanned recursively, e.g. if a Zip archive contains a RAR
# file, all files within it will also be scanned. This options specifies how
# deeply the process should be continued.
# Note: setting this limit too high may result in severe damage to the system.
# Default: 16
#MaxRecursion 10
# Number of files to be scanned within an archive, a document, or any other
# container file.
# Value of 0 disables the limit.
# Note: disabling this limit or setting it too high may result in severe damage
# to the system.
# Default: 10000
#MaxFiles 15000
## Clamuko settings
# Enable Clamuko. Dazuko must be configured and running. Clamuko supports
# both Dazuko (/dev/dazuko) and DazukoFS (/dev/dazukofs.ctrl). DazukoFS
# is the preferred option. For more information please visit www.dazuko.org
# Default: no
#ClamukoScanOnAccess yes
# The number of scanner threads that will be started (DazukoFS only).
# Having multiple scanner threads allows Clamuko to serve multiple
# processes simultaneously. This is particularly beneficial on SMP machines.
# Default: 3
#ClamukoScannerCount 3
# Don't scan files larger than ClamukoMaxFileSize
# Value of 0 disables the limit.
# Default: 5M
#ClamukoMaxFileSize 10M
# Set access mask for Clamuko (Dazuko only).
# Default: no
#ClamukoScanOnOpen yes
#ClamukoScanOnClose yes
#ClamukoScanOnExec yes
# Set the include paths (all files inside them will be scanned). You can have
# multiple ClamukoIncludePath directives but each directory must be added
# in a seperate line. (Dazuko only)
# Default: disabled
#ClamukoIncludePath /home
#ClamukoIncludePath /students
# Set the exclude paths. All subdirectories are also excluded. (Dazuko only)
# Default: disabled
#ClamukoExcludePath /home/bofh
# With this option you can whitelist specific UIDs. Processes with these UIDs
# will be able to access all files.
# This option can be used multiple times (one per line).
# Default: disabled
#ClamukoExcludeUID 0
# With this option enabled ClamAV will load bytecode from the database.
# It is highly recommended you keep this option on, otherwise you'll miss detections for many new viruses.
# Default: yes
#Bytecode yes
# Set bytecode security level.
# Possible values:
# None - no security at all, meant for debugging. DO NOT USE THIS ON PRODUCTION SYSTEMS
# This value is only available if clamav was built with --enable-debug!
# TrustSigned - trust bytecode loaded from signed .c[lv]d files,
# insert runtime safety checks for bytecode loaded from other sources
# Paranoid - don't trust any bytecode, insert runtime checks for all
# Recommended: TrustSigned, because bytecode in .cvd files already has these checks
# Note that by default only signed bytecode is loaded, currently you can only
# load unsigned bytecode in --enable-debug mode.
# Default: TrustSigned
#BytecodeSecurity TrustSigned
# Set bytecode timeout in miliseconds.
# Default: 5000
# BytecodeTimeout 1000
My freshclam.conf:
## Please read the freshclam.conf(5) manual before editing this file.
# Comment or remove the line below.
#Example
# Path to the database directory.
# WARNING: It must match clamd.conf's directive!
# Default: hardcoded (depends on installation options)
#DatabaseDirectory /var/lib/clamav
# Path to the log file (make sure it has proper permissions)
# Default: disabled
UpdateLogFile /var/log/clamav/freshclam.log
# Maximum size of the log file.
# Value of 0 disables the limit.
# You may use 'M' or 'm' for megabytes (1M = 1m = 1048576 bytes)
# and 'K' or 'k' for kilobytes (1K = 1k = 1024 bytes).
# in bytes just don't use modifiers.
# Default: 1M
#LogFileMaxSize 2M
# Log time with each message.
# Default: no
#LogTime yes
# Enable verbose logging.
# Default: no
#LogVerbose yes
# Use system logger (can work together with UpdateLogFile).
# Default: no
#LogSyslog yes
# Specify the type of syslog messages - please refer to 'man syslog'
# for facility names.
# Default: LOG_LOCAL6
#LogFacility LOG_MAIL
# This option allows you to save the process identifier of the daemon
# Default: disabled
#PidFile /var/run/freshclam.pid
# By default when started freshclam drops privileges and switches to the
# "clamav" user. This directive allows you to change the database owner.
# Default: clamav (may depend on installation options)
#DatabaseOwner clamav
# Initialize supplementary group access (freshclam must be started by root).
# Default: no
#AllowSupplementaryGroups yes
# Use DNS to verify virus database version. Freshclam uses DNS TXT records
# to verify database and software versions. With this directive you can change
# the database verification domain.
# WARNING: Do not touch it unless you're configuring freshclam to use your
# own database verification domain.
# Default: current.cvd.clamav.net
#DNSDatabaseInfo current.cvd.clamav.net
# Uncomment the following line and replace XY with your country
# code. See http://www.iana.org/cctld/cctld-whois.htm for the full list.
# You can use db.XY.ipv6.clamav.net for IPv6 connections.
#DatabaseMirror db.XY.clamav.net
# database.clamav.net is a round-robin record which points to our most
# reliable mirrors. It's used as a fall back in case db.XY.clamav.net is
# not working. DO NOT TOUCH the following line unless you know what you
# are doing.
DatabaseMirror database.clamav.net
# How many attempts to make before giving up.
# Default: 3 (per mirror)
#MaxAttempts 5
# With this option you can control scripted updates. It's highly recommended
# to keep it enabled.
# Default: yes
#ScriptedUpdates yes
# By default freshclam will keep the local databases (.cld) uncompressed to
# make their handling faster. With this option you can enable the compression;
# the change will take effect with the next database update.
# Default: no
#CompressLocalDatabase no
# With this option you can provide custom sources (http:// or file://) for
# database files. This option can be used multiple times.
# Default: no custom URLs
#DatabaseCustomURL http://myserver.com/mysigs.ndb
#DatabaseCustomURL file:///mnt/nfs/local.hdb
# Number of database checks per day.
# Default: 12 (every two hours)
#Checks 24
# Proxy settings
# Default: disabled
#HTTPProxyServer myproxy.com
#HTTPProxyPort 1234
#HTTPProxyUsername myusername
#HTTPProxyPassword mypass
# If your servers are behind a firewall/proxy which applies User-Agent
# filtering you can use this option to force the use of a different
# User-Agent header.
# Default: clamav/version_number
#HTTPUserAgent SomeUserAgentIdString
# Use aaa.bbb.ccc.ddd as client address for downloading databases. Useful for
# multi-homed systems.
# Default: Use OS'es default outgoing IP address.
#LocalIPAddress aaa.bbb.ccc.ddd
# Send the RELOAD command to clamd.
# Default: no
NotifyClamd /etc/clamav/clamd.conf
# Run command after successful database update.
# Default: disabled
#OnUpdateExecute command
# Run command when database update process fails.
# Default: disabled
#OnErrorExecute command
# Run command when freshclam reports outdated version.
# In the command string %v will be replaced by the new version number.
# Default: disabled
#OnOutdatedExecute command
# Don't fork into background.
# Default: no
#Foreground yes
# Enable debug messages in libclamav.
# Default: no
#Debug yes
# Timeout in seconds when connecting to database server.
# Default: 30
#ConnectTimeout 60
# Timeout in seconds when reading from database server.
# Default: 30
#ReceiveTimeout 60
# With this option enabled, freshclam will attempt to load new
# databases into memory to make sure they are properly handled
# by libclamav before replacing the old ones.
# Default: yes
#TestDatabases yes
# When enabled freshclam will submit statistics to the ClamAV Project about
# the latest virus detections in your environment. The ClamAV maintainers
# will then use this data to determine what types of malware are the most
# detected in the field and in what geographic area they are.
# Freshclam will connect to clamd in order to get recent statistics.
# Default: no
#SubmitDetectionStats /path/to/clamd.conf
# Country of origin of malware/detection statistics (for statistical
# purposes only). The statistics collector at ClamAV.net will look up
# your IP address to determine the geographical origin of the malware
# reported by your installation. If this installation is mainly used to
# scan data which comes from a different location, please enable this
# option and enter a two-letter code (see http://www.iana.org/domains/root/db/)
# of the country of origin.
# Default: disabled
#DetectionStatsCountry country-code
# This option enables support for our "Personal Statistics" service.
# When this option is enabled, the information on malware detected by
# your clamd installation is made available to you through our website.
# To get your HostID, log on http://www.stats.clamav.net and add a new
# host to your host list. Once you have the HostID, uncomment this option
# and paste the HostID here. As soon as your freshclam starts submitting
# information to our stats collecting service, you will be able to view
# the statistics of this clamd installation by logging into
# http://www.stats.clamav.net with the same credentials you used to
# generate the HostID. For more information refer to:
# http://www.clamav.net/support/faq/faq-cctts/
# This feature requires SubmitDetectionStats to be enabled.
# Default: disabled
#DetectionStatsHostID unique-id
# This option enables support for Google Safe Browsing. When activated for
# the first time, freshclam will download a new database file (safebrowsing.cvd)
# which will be automatically loaded by clamd and clamscan during the next
# reload, provided that the heuristic phishing detection is turned on. This
# database includes information about websites that may be phishing sites or
# possible sources of malware. When using this option, it's mandatory to run
# freshclam at least every 30 minutes.
# Freshclam uses the ClamAV's mirror infrastructure to distribute the
# database and its updates but all the contents are provided under Google's
# terms of use. See http://code.google.com/support/bin/answer.py?answer=70015
# and http://safebrowsing.clamav.net for more information.
# Default: disabled
#SafeBrowsing yes
# This option enables downloading of bytecode.cvd, which includes additional
# detection mechanisms and improvements to the ClamAV engine.
# Default: enabled
#Bytecode yes
# Download an additional 3rd party signature database distributed through
# the ClamAV mirrors. Here you can find a list of available databases:
# http://www.clamav.net/download/cvd/3rdparty
# This option can be used multiple times.
#ExtraDatabase dbname1
#ExtraDatabase dbname2
Any help is much appreciated.MatejLach wrote:
clamd is running, user and group clamav all have the relevant permissions as far as I can tell, however upon scanning my mail, I always end up with the following error:
Scanning error:
/home/username/.claws-mail/mimetmp/0000000e.mimetmp: lstat() failed: Permission denied. ERROR
Seems like a permissions error to me... maybe check the actual file it is attempting to scan... I know it is in your home folder, but just to be sure, you might want to check that everything is sane. -
SEVERE: An error occured while scanning for the next trigger to fire
Hi All,
I followed below steps to configure Oracle BI publisher scheduler on oracle 10g database.
1.Log in to BI Publisher as a user with Administrator privileges and select the Admin tab.
2.Under System Maintenance, select Scheduler Configuration.
3.Enter the database connection information for the target Oracle database and user.
Database Type: 10g
Connection String: jdbc:oracle:thin://<hostname>:<port#>:<oracle SID>
Username/Password for the database user
Database Driver Class: oracle.jdbc.driver.OracleDriver
4.Click the Test Connection button to make sure the connection information is valid.
5.Click the Install Schema button to install the scheduler tables.
6.Restart the BI Publisher application.
The Schema installed successfully.
But when I am starting the weblogic server I am getting below error and BI publisher application is not getting up.
INFO: Handling 6 triggers that missed their scheduled fire-time.
23-Dec-2011 05:29:38 org.quartz.core.ErrorLogger schedulerError
SEVERE: An error occured while scanning for the next trigger to fire.
org.quartz.JobPersistenceException: Couldn't acquire next trigger: Couldn't retrieve trigger: Invalid column name [See nested exception: org.quartz.JobPersistenceException: Couldn't retrieve trigger: Invalid column name [See nested exception: java.sql.SQLException: Invalid column name]]
at org.quartz.impl.jdbcjobstore.JobStoreSupport.acquireNextTrigger(JobStoreSupport.java:1773)
at org.quartz.impl.jdbcjobstore.JobStoreTX.acquireNextTrigger(JobStoreTX.java:1176)
at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:233)
* Nested Exception (Underlying Cause) ---------------
org.quartz.JobPersistenceException: Couldn't retrieve trigger: Invalid column name [See nested exception: java.sql.SQLException: Invalid column name]
at org.quartz.impl.jdbcjobstore.JobStoreSupport.retrieveTrigger(JobStoreSupport.java:1126)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.acquireNextTrigger(JobStoreSupport.java:1759)
at org.quartz.impl.jdbcjobstore.JobStoreTX.acquireNextTrigger(JobStoreTX.java:1176)
at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:233)
* Nested Exception (Underlying Cause) ---------------
java.sql.SQLException: Invalid column name
at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:70)
at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:133)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:199)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:263)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:271)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:445)
at oracle.jdbc.driver.OracleStatement.getColumnIndex(OracleStatement.java:3372)
at oracle.jdbc.driver.OracleResultSetImpl.findColumn(OracleResultSetImpl.java:2009)
at oracle.jdbc.driver.OracleResultSet.getBinaryStream(OracleResultSet.java:668)
at org.apache.commons.dbcp.DelegatingResultSet.getBinaryStream(DelegatingResultSet.java:233)
at org.quartz.impl.jdbcjobstore.oracle.OracleDelegate.getObjectFromBlob(OracleDelegate.java:154)
at org.quartz.impl.jdbcjobstore.StdJDBCDelegate.selectTrigger(StdJDBCDelegate.java:2382)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.retrieveTrigger(JobStoreSupport.java:1115)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.acquireNextTrigger(JobStoreSupport.java:1759)
at org.quartz.impl.jdbcjobstore.JobStoreTX.acquireNextTrigger(JobStoreTX.java:1176)
at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:233)
23-Dec-2011 05:30:55 org.quartz.core.ErrorLogger schedulerError
The system details are as below :
BI Publisher version : 10.1.3.4
Oracle DB : 10 G
Weblogic server :10.3.2
Please suggest to resolve this issue.
Thanks,
SachinHi,
This errors occurs if you have configured some schema for the scheduler and configured it on BIP, but the configured schema is no longer available.
That is why I am suggesting you to replace the current quartz.properties file with the original file that exits during installation.
Then try to start the server, and see if the server starts without error.
After that you can try to configure the scheduler from BIP console.
thanks,
sandeep -
Hi Everybody,
I'm trying to use LabView to
process some data. The data, although it was collected via labview,
has been written out to csv file format. I have been able to
successfully open the file and use the search split string function to
remove the "header" from the data stream. Now I'm trying to parse the
header to extract some pieces of the info that is there. I'm trying to
do this with the Scan from String VI.
So
far I've been able to retrieve the Specimen ID from the first line of
the header by setting the format string input of Scan from String as
"Specimen ID ,%s", which works just fine. Problem is, when I
adjust
the format string to include the next piece of data I want, I
inevitably get an Error 85, which is a failed scan. In fact, I
get an err85 every time I try to extract something from after the
second line. I've attached a VI in which I cut and pasted an
example header string in as a string constant and an example of how I'm
trying to extract the values. I've tried playing around with
spaces and different formats, but get the err85 no matter what I do
(unless I extract the first line). I have a hunch that it has
something to do with the EOL marker, but no idea how to work around it.
A search of posts here show that a lot of people have issues with the
scan from string vi, but nobody I could find had this exact
problem. I've also considered using the spreadsheet spring to
array function, but because I have a mix of commas and EOLs it doesn't
seem to work either. HELP! I really don't want to have to write this
over in VBA/Excel.
Thanks,
Turk
Message Edited by YoungTurk on 07-29-2005 10:36 AM
Attachments:
Scan.vi 12 KBYou should probably parse it line by line (See attached, LabVIEW 7.1)..
The attached example shows one possibility to get all the Items and values out. Not all values are strictly numeric so you would need to adapt the code a little bit. (This is just a very rough 1 minute draft).
You might want to cosider to extract all values into a cluster for further processing, Have a look at the example posted in this thread . It can be easily adapted to read the values in the proper format (DBL, I32, Date, String, etc.) depending on the item name.
Good luck!
LabVIEW Champion . Do more with less code and in less time .
Attachments:
ScanMOD.vi 30 KB -
Wrong use of "Scan From String" function in a while loop?
Hi,
I've got a "Scan From String" function inside a while loop. On the first iteration it converts correctly the number passed by the input string (for example 4) But on the second one it has only spaces (one or more \s) as input string.
I expected to obtain a zero as output (as it does always that it can not make any conversions, as I am supposed to) but indeed, i subtracts 1 from the previous number (according to the number indicated as example I would obtain a 3 as output)
What's wrong with this?
Does the function fails on this case?
The rest of the diagram o the VI is expected to manage a 0 on that situation, like others in which the conversion is not made.
Andres.I have simplified the VI evading calls to other VIs and trying to reproduce the mistake.
The type of string I introduce to reproduce the mistake is:
clock 3 (30) clock (40)
Forgetting to introduce a number between the second "clock" and the following parenthesis, I would manage it programmatically with code that isn't included.
Then "Scan From String" is supposed to do not make a conversion. But it leaves a 2 as output (in this example)
I have realised, unbelievable but true, that it has matter with the number I substract to the output number (if it were 2, I would obtain 1 as output and so on)
Excluding that, I got the conversion made before as output, 3, on the second time that "Scan From String" executes. But, how can this func
tion as bad?
I am using LV4 on an old PC. I have tried to reproduce it with LV6 and it works. But it isn't desirable for me, I would have to convert a lot of VIs and surely I will find a lot of errors due to the conversion (I have already tried)
Attachments:
EXTCLOCK.VI 26 KB -
How to scan for Delimiter?
Hi there,
My Vi is reading data from a bar code scanner. I would like to stop my while loop by reading the terminal string "/s" from the bar code that been scanned.
May I know to "scan" for the terminal string?
Thanks & Regards,
NormanHi Chris,
Thank you for your value reply.
When I add your solution to my vi it don't work well. Because I'm using Global variable to pass the data. Can help me to take a look of my vi and let me know where I can improve with?
To stop the while, I have try Match pattern, however it don't really work because it can't read the "/s" termial char.
I also tried Scan String For Token, it works however I not very sure whether it is the correct method to use or it is not?
Thank you in advance for the reply,
Best Regards,
Norman
Attachments:
Model_Read_Global.vi 10 KB
BarCode&Weight.vi 134 KB
BarCodeCtrl.ctl 7 KB -
i all,
I'm trying to use Scan From String in order to parse some data coming in from UDP.
Input String: ASCII [00 01 02 03 ... FF]
What I want: s[00 .. 30] d[12], d[34], d[56] leftover s[37 38 39 ... FF]
ATTEMPT1
Format String: %49s%2d%2d%2d
What I get: s[00-09] RUNTIME ERROR!
ATTEMPT2
Format String: %49[^]%2d%2d%2d
What I get: Only allows first output. Will error out if I use any additional outputs from Scan From String
ATTEMPT3
Format String: %49[^(0xFF)]%2d%2d%2d Value in () is ASCII character FF.
What I get: s[00 .. 30] d[12], d[34], d[56] leftover s[37 38 39 ... FF]
It appears as though when I use %##[^] it thinks I'm looking for the ENTIRE string so it will not let me add any more Formatting. If I add a delimiter other than ^ it will run, and it will work presuming that character isn't within the first 49 characters... and I can't guarentee that it won't.
I'm aware I can parse my string using subsets and whatnot... but Scan From String is so elegant. It would be great if %S allowed for white space... or if $##[^] would simply take the first ## characters and allow me to Format after that.
Is there a simple, elegant way to do this? I wish my dataset was only 3-4 outputs. It'd be ideal if I could. Thanks.
Edit:
It might be more helpful if I provide a less abstract example:
I have an ASCII Header (Finite Length String), a Sender IP (Finite Length String), a Timestamp, a Message ID (Finite Length Decimal), A Message in ASCII ( '1' actually means 0x31, not 0x01) And for some ungodly reason... no delimiters.
So I was HOPING %##s%##s%<%H:%M:%s>t%##d (With leftover string to be my message) would work, but if any white space is contained within there... it messes up.I cannot provide exact strings because the string is actually ASCII characters, most of which aren't displayable.
I have a string where I have:
24 ASCII Characters representing 6x U32 Header Data
13 ASCII characters represening the sender IP (string)
12 ASCII Characters representing the name of the message (String)
12 ASCII Characters representing 3x U32 Data
12 ASCII Characters represneting the name of packet (String)
12 ASCII Characters representing 12x U8 Data
256 ASCII Characters represening 256x U8 Data
etc...
It would be ideal to simply Scan from the string and output the data with the appropriate data types already assigned instead of splitting string and type casting each individualy. But if, for example, my header starts with an ASCII representation of a U32 of 2560(decimal) it would look like this: [00][00][0A][00]. ASCII 0A is considered white space. So my header would only contain 2 ASCII characters instead of the desired 24. -
Using scan from string to convert a string into a number
I wanted to use scan from string to change a string into a decimal number, but when the string is, for example, 9.14123E-2 it just returns 10. How can I get it to return .00914 or 9.14E-2(as a number not a string). Would there be something easier than scan from string? I'm using labview 5.1. Thank you!
Hello,
May be you can checkout the attached example.
Perkash Mohan Lal
Institute of Semiconductor Technology
Technical University Braunschweig
Attachments:
string_conversion_1.vi 44 KB -
Error 1 occurred at Scan From String (arg 1)
I am communicating with the AT Trainer 5000 via serial port to USB converter.
I installed all drivers of converter successfully and it is shown in MAX as com port. I also installed VISA software.
I am using labview 2013 version.
When I connect the hardware to PC via usb to serial converter, try to run the program for seeing of real time graphs, I am receiving this error Error 1 occurred at Scan From String (arg 1) whereas there is no waveform shown in waveform chart.
Also read buffer didn't show an incoming data at read buffer.
Other details for this error is
Possible reason(s):
LabVIEW: An input parameter is invalid. For example if the input is a path, the path might contain a character not allowed by the OS such as ? or @.
Also pics of error is:
Program is also attached. Please checked the also.
Expert please help me how to get rid of this error.
Attachments:
Project.vi 23 KBSince you are using the termination character, you should not use the Bytes At Port property node. Just set the number of bytes to read for the VISA Read to something really high (larger than what you expect in a single transmission). The VISA Read will stop reading once the termination character is reached.
Now, what is the format of the data coming from the instrument? I see you are converting an ASCII Hex string into a number while trying to also turn it into a double. That is likely why you are getting your error.
There are only two ways to tell somebody thanks: Kudos and Marked Solutions -
How do I avoid Error 85 in Scan From String scanning VISA read buffer?
I have encountered an Error 85 with my Scan From String VI. I have a timed
loop to read data from a device (flowmeter) using a serial port. This device takes
periodic measurements and sends the reading which contains a numerical value to the serial port COM1. It cannot be read continuously, and the period
between measurements may vary, so I decided a timed loop would be better than a while loop.
The VI begins with VISA Configure Serial Port and then
goes to a VISA Write which sends the message to the device to begin
taking measurements. After this, the device usually says "TAKE FLOWMETER READINGS" to the terminal, thereafter only sending numbers. Then begins my timed loop containing VISA Read. I
am taking the read buffer two places.
First, I am taking it to an Array to Spreadsheet String with the
Format String %.3f, as was in the Write to Text File example. Then I am
using Concatenate Strings with this string and also a string containing
the System Time. This string goes to Write to Text File, which I have
configured using Open/Create/Replace File outside of the loop.
Second, I am taking the read buffer to a waveform chart. I thought
it would be a good idea to use Scan From String to convert the string
into a DBL which I am then sending to the waveform
chart.
I am not sure if the initial "TAKE READINGS" message is giving me an error. I was able to get one reading saved to my text file from the device.
Also the format string for my Scan From String is %.3f
I am getting the Error 85 at the Scan From String only sometimes.
When this happens, there is no data being written to the text file. But
other times, I get data and it writes to the text file just fine (but
rounds to nearest whole number).
Any help would be greatly appreciated! This serial port device has been giving me a lot of trouble.Is this what you mean? Did I wire the shift registers correctly?
I didn't know if you meant to Concatenate before Scan From String or Concantenate before or after VISA Read?
Message Edited by YeungJohn on 11-20-2008 03:48 PM
Message Edited by YeungJohn on 11-20-2008 03:49 PM
Attachments:
SerialShiftVI.JPG 87 KB -
Hello.
I work with LV 7.1, with the I Modul of PDA.
It doesn't work me 'Scan From String'. I have not found any contradiction because the pda doesn't accept it.
Does somebody know which the cause can be? As I can substitute it?
Thank you.
Greta
Attachments:
scan from string.JPG 6 KBHello Greta
The Scan from string function is supported in LV PDA but with some restrictions. The help file for LV PDA tells us:
'The Format Into String function and the Scan From String function do not support changing the numeric separator (such as %#;). The Scan From String function does not support wildcard matches.'
You are changing the numeric separator and this is not supported.
Hope this helps
BelenS -
Scan from string and extract string between delimiter
Hello,
Basic questions. Is it possible with the scan from string regular expression to extract the string that are within the specified delimiters. Here is an example:
\\Name of folder 1\Name of folder 2\Name of folder 3\File Name
Can the scan from string output the following by specifying the right regular expression:
Name of folder 1
Name of folder 2
Name of folder 3
File Name
I have tried \\\\%s\\%s\\%s\\%s but the %s stops at the first white space.
Thanks,
Michel
Solved!
Go to Solution.RavensFan suggested the appropriate function for your requirement, however you can also use an alternative, which is 'Spreadsheet String To Array'.
I am not allergic to Kudos, in fact I love Kudos.
Make your LabVIEW experience more CONVENIENT.
Maybe you are looking for
-
I imported photos into iPhoto from my iPhone, however i cannot access them. When clicking on iPhoto Library where they should be stored the folder is blank but if i open up iphoto from the dock menu they appear. I had to create a new folder just to a
-
hello, i am trying to see a goverment page that says : "This site requires an Internet Explorer browser that supports JavaScript and cookies. Your browser either does not support JavaScript or cookies, or it has JavaScript or cookies support disabled
-
Splitting audio from separate browser tabs or instances to different soundcards
Hi, I would like to be able to separate the audio being played by flash media player when there are two tabs playing different streams in Firefox (or another browser). Frustratingly, Adobe Flash Player doesnt offer any choice of the sound card to
-
Looking for AppleTV2 Network Media Server
will the time capsule act as a media server for my apple tv or will it just back up my files? Looking for a good network media server thats not to pricey?
-
Selection tool doesnt work in illustrator cc 2014
selection tool doesnt work in illustrator cc 2014.