TYPO3: how to recover a deleted language? - typo3

In the table pages_language_overlay I can see that there are entrys with sys_language_uid = 1. But there is no language if i look under list on page with id=0. How can I recover the language?
The problem is that I tried to create a new language with the id = 1 on a copy of the project. Then I had some problems because TYPO3 didn't get it managed it right with realURL (see here). What can I do?

You will have to create an additional language record for your website:
in backend: activate the list module
select the root node of the whole page tree (id=0)
check if there is already a block "Website Language" with a record in it
if not: click on "Create new record" (little icon with green plus close to top of window)
select System Records -> Website Language
select the name, ISO code and flag for your language
save
Now make sure that your new language record has id=1. If the ID is higher your autoincrement value in table sys_language was not zero (possibly because you have created and deleted a language earlier). In this case you will have to modify sys_language manually (export to SQL, modify SQL accordingly, delete table and reimport).
Cheers, Jörg.

Related

How to change page languages automatically for all pages on Typo3

We have changed the primary language for our site https://staging.venicexplorer.net from English to Italian. But the problem is it is showing English text when we selected Italian and vice versa. We are now altering the languages of the content. But this is a very time consuming job. Can anyone please tell me whether there is any shortcut method?
Thanks
Prasun
Here are some hints for updating the language of content and pages in the database:
Content
The language of a content element (table tt_content) is in the field sys_language_uid. Default language is always 0, "all languages" is -1.
Each translated record (sys_language_uid NOT IN (0,1)) can (aka "connected mode") have a link to its default language counterpart. This is set in the field l10n_parent.
Pages
First of all for TYPO3v9 this depends on the feature toggle unifiedPageTranslationHandling. I will assume that your instance is already fully migrated to not use pages_language_overlay any more.
The same rules as for tt_content apply: sys_language_uid is the language, l10n_parent the default language record.
Other records
The same applies to all other translated records in TYPO3 or its extensions.
Technically, these fields are defined for each table in TCA in [ctrl][languageField] and [ctrl][transOrigPointerField] but sys_language_uid and l10n_parent are used mostly.
Notice
This is not an exhaustive list. There are fields that are only set in the default language (e.g. access restrictions). Make a backup first! But that should cover most bases.

SQL Developer 19.1 doesn't show the matching list of table names in worksheet editor

SQL Developer 19.1 - worksheet editor doesn't show matching list of table names from the schema. Eg. If I were to write a SQL query such as:
select * from TMP_EMPLOYEE_MASTER;
I am expecting SQL Developer to show me the table name after I have typed first few letters of the table name (eg. TMP_EM). But looks like SQL developer doesn't seem to be helping at all in highlighting the matching table names.
I know that this feature exists in SQL Developer. Just wondering why it isn't working
Edit 1:
I tried below options but still not working:
CTL+spacebar.
Change the entries in the preferences as mentioned in the screenshot. But this didn't help. The auto complete/suggestion for table name is not coming at all.
I'm guessing you have more than 10 tables that start with TMP
Increase the filter for Auto-Complete to something higher than 10 - or type more letters, or use Ctrl+Spacebar to 'force' the completion feature to fire.
That option is located in Tools - Preferences; search for "complet" and you'll see Code Editor: Completion Insight. Check both "SQL Worksheet" and "PL/SQL Editor" checkboxes, adjust popup speed if necessary.
Works for me ...

How do i change the language for spellchecking in Libreoffice Calc

I have to create a table with LibeOffice Calc in another language than my native one.
If I run the spellchecking, I manually have to change the language for every word in the document. How do I change it for the whole document at once?
I tried to select the desired language in the Extra/Auto Correction Options menu, which had no effect.
According to LibreOffice Help and a quick check on an existing Calc document.
Choose Tools - Options. Go to Language Settings - Languages.
Under Default languages for documents, select the document language for all newly created documents. If you mark For the current document only, your choice will only apply to the current document. Close the dialog with OK.

How to delete tt_content elements which do not have any connection to a page

I want to find all tt_content elements from a TYPO3 installation, which do not have a connection to a page. How would you do that?
Every tt_content record has connection to the page via pid field, the only reason for opposite situation is manipulating with tt_content records manually (i.e. creating them by some external script or even adding to DB with phpMyAdmin).
For permanent deleting contents from pages that was deleted via TYPO3's backend (and also any other types of records), you can just use Recycler extension - it's system one, so just go to Extension Manager and enable it. Then select the highest page in your tree, choose depth Infinite, and you'll find all soft-deleted records by type, deleting them in the Recycler will remove them totally from DB.
If for some reason you have such situation that pages record with given uid doesn't exists at all, although tt_content uses its pid, the Recycler won't find it. These can be only found by SQL query:
SELECT tt_content.uid, tt_content.pid, pages.uid page_uid
FROM tt_content LEFT JOIN pages ON (tt_content.pid=pages.uid)
WHERE pages.uid IS NULL
Disclaimer: Manual DB manipulation should be avoided as long as possible. TYPO3's backend is able to maintain deleted records very well and first try built-in tools. I do not response for any damages caused by manual DB changes, for your own safety make a DB backup before deleting/modifying ANY records.

Autonumbering in forms in Access

I have a form in access that saves the data in a database and I want one of the fields to be automatically calculated as the next value in line as the ID so that the user doesnt write the ID. does anyone have any ideas?
Create your table using an Autonumber data type.
If you manually create your tables then this statement
CREATE TABLE TableThatIncrements
(
Id AUTOINCREMENT(1001,1)
)
Alternately you can edit your existing table Id column using:
ALTER TABLE TableThatIncrements
ALTER COLUMN Id AUTOINCREMENT(1001,1)
If you do not, then you can change per the article I mentioned via the GUI interface. See steps in this article: https://superuser.com/questions/288087/how-do-i-set-the-first-value-of-autonumber-in-access
You can run a query in Access by doing the following:
Go to the "Create" tab and click "Query Design"
Just close the window that appears which asks you to select tables, we don't need that.
Go to the "Design" tab and click the button with the arrow until you get a textual input screen. (By default, it says SELECT;).
Delete the default text and paste the above query.
Click "Run".