Forum Replies Created
-
AuthorPosts
-
RRowleyParticipant
The error is objecting to the Currency code that you have set in the si_preferences file. You can look in the database si_preferences table and near the end of each record, see what you have in the currency_code field. They should all be alpha values and each 3-characters long. This link, IBAN Currency Codes shows the list of valid codes for each country. Make sure all the currency_code values in the si_preferences table have valid alpha codes from this table.
RRowleyParticipantWhat version of php are you on. 7.4 has better performance than older versions.
RRowleyParticipantThe error you are getting is:
[14-Apr-2021 14:02:04 Europe/Paris] SqlPatchManager::runSqlPatch() - PdoDb - query(): Execute error. See error_log. [16-Apr-2021 17:05:34 Europe/Paris] PdoDb - debugger(): ALTER TABLE <code>si_invoices</code> ADD UNIQUE INDEX <code>UniqDIB</code> (<code>index_id</code>, <code>preference_id</code>, <code>biller_id</code>, <code>domain_id</code>), ADD INDEX <code>IdxDI</code> (<code>index_id</code>, <code>preference_id</code>, <code>domain_id</code>); [16-Apr-2021 17:05:34 Europe/Paris] PdoDb - query(): Execute error.Array ( [0] => 42000 [1] => 1067 [2] => Invalid default value for 'date' )
If you look at the si_invoices structure, you should see that the date column is set to NULL = NO and Default of 0000-00-00 00:00:00. You need to make sure that zero dates are allowed in your database. Do this by commenting out the “sql_mode=” in the my.ini file.
For reference, make the current setting for this value into a comment by adding a # at the front of the line. An example of what this line might be set to is, sql_mode=NO_ZERO_IN_DATE,NO_ZERO_DATE,NO_ENGINE_SUBSTITUTION.
After you make this change, restart your mysql server and access SI again.
- This reply was modified 3 years, 7 months ago by RRowley.
RRowleyParticipantCheck the content of your si_index table. There is probably only one record in it but could be more. Make sure each record contains a numeric 0 in the sub_node_2 column. It is probably blank but should be 0.
RRowleyParticipantNot sure what you mean by the “second” feature request. If you mean to have it all displayed on one line with description first, I’m less inclined to do that as it impacts the space available for people the have multiple taxes. The line currently handles up to three taxes per item. Also, I don’t see the benefit of such a change given the complexity of template changes to maintain it.
RRowleyParticipantI just upload the change to add an option to the system defaults table that allows you to enter the invoice new and edit screens with the item descriptions open. Give it a try and let me know how this works out. Note that this is a master_2020 level change.
- This reply was modified 3 years, 7 months ago by RRowley.
RRowleyParticipantIf you have no problem with the description being displayed where it is now, I can look at implementing a SI Defaults option to have it showing on new invoices rather than hidden. This will be a master_2020 feature though.
RRowleyParticipantFor SI master_2019.2, you need to be on PHP 7.2 at a minimum. PHP 7.4 preferably and 7.4 required for SI master_2020. Any reason you can’t do this?
RRowleyParticipantBefore pursuing a change, have you used the new invoice form as it comes with SI? The default templates show what you ask for with the exception of the description being on the line below the “Quantity”, etc. You just have to select the “Show Details” button.
This form avoids overflow when you have multiple tax ids, or a long description.
If the issue is that you want to access the screen with detail boxes display by default, I think that is more easily accomplished than rewriting the screens. Although the text box for the description would still follow on the line after the item details.
First try and work with what you get by default. If this causes you headaches, let me know and I’ll see what can be done.
RRowleyParticipantZip your old files from the custom directory and attach them to a response to this message. I’ll look to see what you have.
- This reply was modified 3 years, 7 months ago by RRowley.
RRowleyParticipantIf you are running SI 2011, you should try to update to master_2019.2. I should work with your level of PHP. The update is pretty straight forward.
- Backup your database
- Copy your SI in to another backup directory.
- Delete all the sub-directories in your SI directory.
- Unzip the master_2019.2 zip file content into your empty SI directory
- Copy the
config/custom.config.php
file from your copy of the old SI into theconfig
directory of your existing SI directory. If you don’t have acustom.config.php
, copy theconfig/config.php
after renaming it tocustom.config.php
- Run SI. I should show you that there are a number of updates that need to be applied. Do this.
-
You might be stopped at the update that adds foreign key support if you have orphaned records in your database. If so, look at the instructions in the error message and see if you can resolve it. If not, get back to me.
RRowleyParticipantWhen you load an update, you should load all the files. I start by making a backup copy of what I have, then delete all existing folders, extract the update from the zip file into your empty directory, then copy the
config/custom.config.ini
file from your backed up copy to theconfig
directory of the update. Then run SI. This way you make sure that you have no residual files that might be a problem.RRowleyParticipantGlad to hear it. It has been a tough upgrade road for you but success in the end will be worth it.
RRowleyParticipantNo sure what you mean by “set the bill and the quote in SI master 2020. So you can elaborate on that.
For reports, the currency code comes from the localCurrencyCode in the custom.config.ini file.
Working with templates is a learn by doing exercise. Refer to the Invoice Templates & Styles topic on the left.
There are two locations where the language is set. In the custom.config.ini, and in the Inv Prefs records. These control which language file is read. For instance, a setting of fr_FR uses language from the
lang/fr_FR/lang.php
file. My needs are simple. So I set all these values the same. Maybe you need to do this also.If I misunderstood the language issue, you might just need to translate the phrase in the lang file you want to use.
RRowleyParticipantLook in your tmp/log/php.log file to see if there is more of an explanation. If you need me to look at it, copy the log file to a zip file and attach that zip file to a response to this message.
Also note what OS you are on and what webserver software you are using.
-
AuthorPosts
Recent Comments