Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wyciąganie rekordów z bazy, PHP+MySQL
hunter777
post
Post #1





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 8.02.2017

Ostrzeżenie: (0%)
-----


witam wszystkich,
Mam taki kod w php+mysql
public function gen_rejestr($dat_start="",$dat_end=""){
$counter=1;
$style = "valign='top' style='background-color: #ffffff; color: #6A6A6A; border: 1px solid #D7E5aa; border-collapse: collapse;'";
$fv_dane_firmy = tool_bag::sql_get("aux_value", "auxil", "aux_name = 'dane_firmy'");
$fv_dane_firmy = str_replace("\n", "<br>", $fv_dane_firmy);
$sqlik= "SELECT * from fv_widok_nabywca WHERE fv_date_wyst >= '$dat_start' AND fv_date_wyst <= '$dat_end'
AND fv_fv_type IN (0,2) ORDER BY fv_num"; // in (0,2)
$reks = mysql_query($sqlik) or die(mysql_error());;



$cialo = "<html>
<head>
<meta http-equiv='content-type' content='text/html; charset=windows-1250'>
<meta name='generator' content='pspad editor, http://www.pspad.com'>
<title>Rejestr sprzeda?y z przedzia?u: [$dat_start] a [$dat_end]</title>

<style type='text/css' media='all'>
.gray {background-color: #e0e0e0; margin-top: 2; margin-bottom: 2; }
.gray_td {background-color: #e0e0e0; text-decoration: underline; text-align: center; border: 1px solid #000000; border-collapse: collapse; padding: 2px;}
.gray_wide {background-color: #e0e0e0; margin-top: 5; margin-bottom: 2; }
.fv_std_td{ border: 1px solid #000000; border-collapse: collapse; empty-cells: show; margin: 2px; font-size: 11px; padding: 5px;}
.do_zaplaty{ background-color: #e0e0e0; border: 1px solid #000000; border-collapse: collapse; empty-cells: show; margin-top: 5px; font-size: 12px; padding: 5px;}
.std_td{ border: 1px solid #000000; border-collapse: collapse; empty-cells: show; margin: 2px; font-size: 11px; }
td {font-size: 12px; font-family: arial;}
hr { height: 1px; background-color: none; color: slategray;}


</style>

</head>
<body LEFTMARGIN=0 TOPMARGIN=0 MARGINWIDTH=0 MARGINHEIGHT=0>
$fv_dane_firmy<br><br>
<center><h2>Rejestr z przedzia?u: od $dat_start do $dat_end</h></center>
<table width=100%>";
$al ="align=middle";
$cialo .= "<tr>
<td $al>LP</td>
<td $al>Typ Dokumentu</td>
<td $al>Numer Dokumentu</td>
<td $al>Data wystawienia</td>
<td $al>Data sprzeda?y</td>
<td $al>Dane Nabywcy</td>
<td $al>Obrót brutto razem<br>VAT razem</td>
<td $al>Netto 22% <br>VAT 22%</td>
<td $al>Netto 7% <br>VAT 7%</td>
<td $al>Netto 3% <br>VAT 3%</td>
<td $al>Netto 0% <br>VAT 0%</td>
<td $al>Zwolnione</td
</tr>
";
while ($fv_dane = mysql_fetch_array($reks))
{

if ($fv_dane[fv_fv_type] == "0") { $typ="Faktura VAT";}
else { $typ="Korekta do FV o nr: <b>$fv_dane[fv_fv2fv_kor]</b>"; }

$sql_licz2 = "SELECT sum(wart_netto) as nt, sum(wart_brutto) as br, sum(vat) as vat from (
SELECT fvwz_s_nazwa, sum(fvwz_s_ilosc) as fvwz_s_ilosc, fvwz_s_cena, fvwz_s_ilosc*fvwz_s_cena as wart_netto,
(fvwz_s_ilosc*fvwz_s_cena)*1.22 as wart_brutto,((fvwz_s_ilosc*fvwz_s_cena)*1.22)-(fvwz_s_ilosc*fvwz_s_cena) as vat
FROM fvwz_stuff
WHERE fvwz_s_id_faktura IN (
SELECT fvwz_s_id_faktura from fvwz_stuff WHERE fvwz_s_id_faktura = '$fv_dane[id_fvwz]')
GROUP BY fvwz_s_id_sprzet, fvwz_s_cena) as sraka";

$sql_licz = "SELECT fv_value_total as nt, fv_value_total*1.22 as br, (fv_value_total*1.22) - fv_value_total as vat from fvwz
WHERE id_fvwz = '$fv_dane[id_fvwz]'";
;



$reksios = mysql_query($sql_licz) or die(mysql_error());;
$podliczenia = mysql_fetch_array($reksios);
$podliczenia[br] = number_format($podliczenia[br], 2);
$podliczenia[nt] = number_format($podliczenia[nt], 2);
$podliczenia[vat] = number_format($podliczenia[vat], 2);

$nabywca = faktura_vat::dane_czlowieczka($fv_dane[fv_na_id],"br");

$fv_dane[fv_na_dane] = str_replace("\n", "<br>", $fv_dane[fv_na_dane]);
$cialo .= "<tr>
<td $style>$counter</td>
<td $style>$typ</td>
<td $style>$fv_dane[fv_num]</td>
<td $style>$fv_dane[fv_date_wyst]</td>
<td $style>$fv_dane[fv_date_sprz]</td>
<td $style>$nabywca</td
<td $style>$podliczenia[br]<br><br>$podliczenia[vat]</td
<td $style>$podliczenia[nt]<br><br>$podliczenia[vat]</td
<td $style>0,00<br>0,00</td
<td $style>0,00<br>0,00</td
<td $style>0,00<br>0,00</td
<td $style>0,00</td
</tr>
";
$counter++;
}
$cialo .= "</table>";

$sql_total2= "SELECT sum(wart_netto) as nt, sum(wart_brutto) as br, sum(vat) as vat from (
SELECT fvwz_s_nazwa, sum(fvwz_s_ilosc) as fvwz_s_ilosc, fvwz_s_cena, fvwz_s_ilosc*fvwz_s_cena as wart_netto,
(fvwz_s_ilosc*fvwz_s_cena)*1.22 as wart_brutto,((fvwz_s_ilosc*fvwz_s_cena)*1.22)-(fvwz_s_ilosc*fvwz_s_cena) as vat
FROM fvwz_stuff
WHERE fvwz_s_id_faktura IN (
SELECT id_fvwz from fv_widok_nabywca WHERE fv_date_wyst >= '$dat_start' AND fv_date_wyst <= '$dat_end' AND fv_fv_type IN (0))
GROUP BY fvwz_s_id_sprzet, fvwz_s_cena) as sraka";

$sql_total = "SELECT sum(fv_value_total) as nt, sum(fv_value_total)*1.22 as br, (sum(fv_value_total)*1.22) - sum(fv_value_total) as vat
from fvwz
WHERE fv_date_wyst >= '$dat_start' AND fv_date_wyst <= '$dat_end' AND fv_fv_type IN (0,2)";

$reksio = mysql_query($sql_total) or die(mysql_error());;
$podliczenia = mysql_fetch_array($reksio);
$podliczenia[br] = number_format($podliczenia[br], 2);
$podliczenia[nt] = number_format($podliczenia[nt], 2);
$podliczenia[vat] = number_format($podliczenia[vat], 2);


$cialo .= "<center><br><br>
<table width='250'>
<tr><td>??cznie BRUTTO: </td><td><b><u>$podliczenia[br]</u></b></td></tr>
<tr><td>??cznie NETTO: </td><td><b><u>$podliczenia[nt]</u></b></td></tr>
<tr><td>??cznie VAT 22%: </td><td><b><u>$podliczenia[vat]</u></b></td></tr>
</table>
</center>";




header("Content-type: text/html; charset=windows-1250");
header("Content-Disposition: attachment; filename=REJESTR-$dat_start-$dat_end.html");
header("Pragma: no-cache");
header("Expires: 0");

print $cialo;

}

i tam gdzie jest pole $nabywca wyrzuca scalone z bazy komórki jako cały adres, a ja potrzebuję osobno nazwę, adres oraz nip. pisał to dawno temu mój kolega ze studiów i niestety nie ma z nim kontaktu...

działa to ok ale wprowadzili od nowego roku jenolity plik kontorlny i ja zamiast rejestru jak powyżej potrzebuje dodatkowo rozdzielone pole właśnie nazwę,adres, nip jako trzy kolumny by to wysłać księgowej...
nie mogę tego rozgryzc jak podzielic to pole lub wrzucic tam odpowiednie pola z bazy...

teraz jest
NAZWA
ULICA
KOD MIEJSCOWOSC
NIP

a ja potrzebuje osobno kolumny NAZWA, ULICA, KOD+MIEJSCOWOSC, NIP.

nie wiem czy mozna podzielic juz ten wystepujacy rekord na linie czy z bazy wyciagnac odpowiednie pola i je wyswietlic...

jesli cos jeszcze byloby potrzebne by namierzyc pola prosze pisac podesle... probowalem to zrobic juz kilkanascie godzin i nie chce mi wpisac tych danych w wyniku...


pozdrawiam,

Ten post edytował hunter777 8.02.2017, 10:53:39
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 14)
markonix
post
Post #2





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Czy Ty uważasz, że to co wrzuciłeś jest w jakikolwiek czytelne? Używaj znaczników na forum.

Zleć zrobienie tego od nowa bo się nie da patrzeć na ten kod.. Poza tym są tam sztywne wstawki z VATem 22%...
Go to the top of the page
+Quote Post
hunter777
post
Post #3





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 8.02.2017

Ostrzeżenie: (0%)
-----


dzięki - to moje pierwsze posty proszę o wybaczenie

co do problemu jest to tak zagmatwane, że gdy zobaczyłem do kodu to od razu zleciłem zrobienie tego od nowa i system jest prawie ukończony lecz - z nowym zleceniobiorcą nie mam kontaktu obecnie - wykonuje import z tej bazy, który trwa juz prawie miesiąc i każe nam czekać - a deklaracja jest do 20 lutego więc mam problem jak rozdzielić tą kolumnę na te trzy... gdybym to zrobił to wrzucę ręcznie to do excella i myślę, że jpk będzie to wykonania ale nie mam pojęcia jak mógłbym wyciągnąć osobno nazwę osobno adres i osobno nip...

rejestr tworzy się w funkcji
public function gen_rejestr($dat_start="",$dat_end="")

nie wiem czy jest opcja na forum mogę podesłać jakoś cały plik klasy.php jeśli jest wymagana

jest tam $nabywca ale ja potrzebuje to co powyzej moze ktoś ma jakiś pomysł jak to spróbować wyświetlić a ja wpiszę i spróbuję

CODE
public function gen_rejestr($dat_start="",$dat_end=""){
$counter=1;
$style = "valign='top' style='background-color: #ffffff; color: #6A6A6A; border: 1px solid #D7E5aa; border-collapse: collapse;'";
$fv_dane_firmy = tool_bag::sql_get("aux_value", "auxil", "aux_name = 'dane_firmy'");
$fv_dane_firmy = str_replace("\n", "<br>", $fv_dane_firmy);
$sqlik= "SELECT * from fv_widok_nabywca WHERE fv_date_wyst >= '$dat_start' AND fv_date_wyst <= '$dat_end'
AND fv_fv_type IN (0,2) ORDER BY fv_num"; // in (0,2)
$reks = mysql_query($sqlik) or die(mysql_error());;



$cialo = "<html>
<head>
<meta http-equiv='content-type' content='text/html; charset=windows-1250'>
<meta name='generator' content='pspad editor, http://www.pspad.com'>
<title>Rejestr sprzeda¿y z przedzia³u: [$dat_start] a [$dat_end]</title>

<style type='text/css' media='all'>
.gray {background-color: #e0e0e0; margin-top: 2; margin-bottom: 2; }
.gray_td {background-color: #e0e0e0; text-decoration: underline; text-align: center; border: 1px solid #000000; border-collapse: collapse; padding: 2px;}
.gray_wide {background-color: #e0e0e0; margin-top: 5; margin-bottom: 2; }
.fv_std_td{ border: 1px solid #000000; border-collapse: collapse; empty-cells: show; margin: 2px; font-size: 11px; padding: 5px;}
.do_zaplaty{ background-color: #e0e0e0; border: 1px solid #000000; border-collapse: collapse; empty-cells: show; margin-top: 5px; font-size: 12px; padding: 5px;}
.std_td{ border: 1px solid #000000; border-collapse: collapse; empty-cells: show; margin: 2px; font-size: 11px; }
td {font-size: 12px; font-family: arial;}
hr { height: 1px; background-color: none; color: slategray;}


</style>

</head>
<body LEFTMARGIN=0 TOPMARGIN=0 MARGINWIDTH=0 MARGINHEIGHT=0>
$fv_dane_firmy<br><br>
<center><h2>Rejestr z przedzia³u: od $dat_start do $dat_end</h></center>
<table width=100%>";
$al ="align=middle";
$cialo .= "<tr>
<td $al>LP</td>
<td $al>Typ Dokumentu</td>
<td $al>Numer Dokumentu</td>
<td $al>Data wystawienia</td>
<td $al>Data sprzeda¿y</td>
<td $al>Dane Nabywcy</td>
<td $al>Obrót brutto razem<br>VAT razem</td>
<td $al>Netto 22% <br>VAT 22%</td>
<td $al>Netto 7% <br>VAT 7%</td>
<td $al>Netto 3% <br>VAT 3%</td>
<td $al>Netto 0% <br>VAT 0%</td>
<td $al>Zwolnione</td
</tr>
";
while ($fv_dane = mysql_fetch_array($reks))
{

if ($fv_dane[fv_fv_type] == "0") { $typ="Faktura VAT";}
else { $typ="Korekta do FV o nr: <b>$fv_dane[fv_fv2fv_kor]</b>"; }

$sql_licz2 = "SELECT sum(wart_netto) as nt, sum(wart_brutto) as br, sum(vat) as vat from (
SELECT fvwz_s_nazwa, sum(fvwz_s_ilosc) as fvwz_s_ilosc, fvwz_s_cena, fvwz_s_ilosc*fvwz_s_cena as wart_netto,
(fvwz_s_ilosc*fvwz_s_cena)*1.22 as wart_brutto,((fvwz_s_ilosc*fvwz_s_cena)*1.22)-(fvwz_s_ilosc*fvwz_s_cena) as vat
FROM fvwz_stuff
WHERE fvwz_s_id_faktura IN (
SELECT fvwz_s_id_faktura from fvwz_stuff WHERE fvwz_s_id_faktura = '$fv_dane[id_fvwz]')
GROUP BY fvwz_s_id_sprzet, fvwz_s_cena) as sraka";

$sql_licz = "SELECT fv_value_total as nt, fv_value_total*1.22 as br, (fv_value_total*1.22) - fv_value_total as vat from fvwz
WHERE id_fvwz = '$fv_dane[id_fvwz]'";
;



$reksios = mysql_query($sql_licz) or die(mysql_error());;
$podliczenia = mysql_fetch_array($reksios);
$podliczenia[br] = number_format($podliczenia[br], 2);
$podliczenia[nt] = number_format($podliczenia[nt], 2);
$podliczenia[vat] = number_format($podliczenia[vat], 2);

$nabywca = faktura_vat::dane_czlowieczka($fv_dane[fv_na_id],"br");

$fv_dane[fv_na_dane] = str_replace("\n", "<br>", $fv_dane[fv_na_dane]);
$cialo .= "<tr>
<td $style>$counter</td>
<td $style>$typ</td>
<td $style>$fv_dane[fv_num]</td>
<td $style>$fv_dane[fv_date_wyst]</td>
<td $style>$fv_dane[fv_date_sprz]</td>
<td $style>$nabywca</td
<td $style>$podliczenia[br]<br><br>$podliczenia[vat]</td
<td $style>$podliczenia[nt]<br><br>$podliczenia[vat]</td
<td $style>0,00<br>0,00</td
<td $style>0,00<br>0,00</td
<td $style>0,00<br>0,00</td
<td $style>0,00</td
</tr>
";
$counter++;
}
$cialo .= "</table>";

$sql_total2= "SELECT sum(wart_netto) as nt, sum(wart_brutto) as br, sum(vat) as vat from (
SELECT fvwz_s_nazwa, sum(fvwz_s_ilosc) as fvwz_s_ilosc, fvwz_s_cena, fvwz_s_ilosc*fvwz_s_cena as wart_netto,
(fvwz_s_ilosc*fvwz_s_cena)*1.22 as wart_brutto,((fvwz_s_ilosc*fvwz_s_cena)*1.22)-(fvwz_s_ilosc*fvwz_s_cena) as vat
FROM fvwz_stuff
WHERE fvwz_s_id_faktura IN (
SELECT id_fvwz from fv_widok_nabywca WHERE fv_date_wyst >= '$dat_start' AND fv_date_wyst <= '$dat_end' AND fv_fv_type IN (0))
GROUP BY fvwz_s_id_sprzet, fvwz_s_cena) as sraka";

$sql_total = "SELECT sum(fv_value_total) as nt, sum(fv_value_total)*1.22 as br, (sum(fv_value_total)*1.22) - sum(fv_value_total) as vat
from fvwz
WHERE fv_date_wyst >= '$dat_start' AND fv_date_wyst <= '$dat_end' AND fv_fv_type IN (0,2)";

$reksio = mysql_query($sql_total) or die(mysql_error());;
$podliczenia = mysql_fetch_array($reksio);
$podliczenia[br] = number_format($podliczenia[br], 2);
$podliczenia[nt] = number_format($podliczenia[nt], 2);
$podliczenia[vat] = number_format($podliczenia[vat], 2);


$cialo .= "<center><br><br>
<table width='250'>
<tr><td>£¹cznie BRUTTO: </td><td><b><u>$podliczenia[br]</u></b></td></tr>
<tr><td>£¹cznie NETTO: </td><td><b><u>$podliczenia[nt]</u></b></td></tr>
<tr><td>£¹cznie VAT 22%: </td><td><b><u>$podliczenia[vat]</u></b></td></tr>
</table>
</center>";




header("Content-type: text/html; charset=windows-1250");
header("Content-Disposition: attachment; filename=REJESTR-$dat_start-$dat_end.html");
header("Pragma: no-cache");
header("Expires: 0");

print $cialo;

}


Ten post edytował hunter777 9.02.2017, 08:59:26
Go to the top of the page
+Quote Post
markonix
post
Post #4





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Ani z wcześniejszego, ani z obecnego kodu nie da się wywnioskować struktury danych w bazie, a ta jest tu najistotniejsza.
W jakich kolumnach znajdują się dane nabywcy?
Go to the top of the page
+Quote Post
markonix
post
Post #5





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Nauczysz się w jakiś normalny sposób udostępniać treść na tym forum? Nie wiem, choćby screen byłby bardziej czytelny...

Baza ma osobno pola, które chcesz wyświetlić tak więc nie powinno to być problemem gdy się ten kod doprowadzi do jakiegoś względnego porządku. Żadne konwersje danych do tego celu nie są potrzebne.
Go to the top of the page
+Quote Post
woxala123
post
Post #6





Grupa: Zarejestrowani
Postów: 361
Pomógł: 12
Dołączył: 9.01.2010

Ostrzeżenie: (10%)
X----


Takiego śmietnika to już dawno nie widziałem. Choć moje początki też nie były lepsze. Popraw się.
Go to the top of the page
+Quote Post
Boshi
post
Post #7





Grupa: Zarejestrowani
Postów: 342
Pomógł: 15
Dołączył: 30.08.2011

Ostrzeżenie: (0%)
-----


Ten drugi kod to jest ten nowy od zera przepisany, jak tak to zleć przepisanie ponownie...
Go to the top of the page
+Quote Post
markonix
post
Post #8





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Z tym linkiem to chyba jesteś niepoważny żeby wrzucać na jakiś płatny upload..

Od wrzucenia kodu masz:
http://pastebin.com/

Struktura bazy na tym drugiem screenie nie wygląda źle, da się z niej wyświetlić wszystko tak jak chcesz.
Skoro ktoś Ci tam już się tym syfem zajmuje to niech to już Ci robi, nie wiem po co ten temat? Ten kod nadaje się wyłącznie na śmietnik i jak już wcześniej wspomniałem wypluwa błędne dane, nie wiem jak może to księgowa przyjmować. Moja zauważy nawet 1gr nie w tę stronę , a Ty od 7 lat wysyłasz raport z błędną kwotą VAT, gratuluje.
Go to the top of the page
+Quote Post
hunter777
post
Post #9





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 8.02.2017

Ostrzeżenie: (0%)
-----


ok zmieniłem na pastebin powinno być teraz ok, problem w tym, że mam za 10 dni dać plik księgowej a nie mogę tego rozdzielić... pisanie nowej bazy potrwa jeszcze na pewno z 2 miesiące... taki mam termin a nikt nie chce tego pliku przerabiać - co jest zrozumiałem i zostałem sam (IMG:style_emoticons/default/sad.gif)

baza wygląda rzeczywiście ok, wiedzę tam np tabele kl_nazwa ale jak sie tak wpisze w tej funcji gen_rejest nie wyciąga danych dlatego nie mogę sobie z tym poradzić - nie jest to takie proste... proszę zerknąć na kod i może udałoby się namierzyć co by tam można było wpisac by pozwolił mi wyświetlić te pola z tabeli klient...

może cały plik klasy coś rozjaśni...
Go to the top of the page
+Quote Post
stefano_F
post
Post #10





Grupa: Zarejestrowani
Postów: 18
Pomógł: 4
Dołączył: 1.02.2013

Ostrzeżenie: (0%)
-----


Witam,
po pierwsze uspokoję Cię, termin na wysłanie JPK macie do 27 lutego, więc masz tydzień więcej :-)

Po drugie, patrząc na kod raportu....

  1. ...
  2. <td $al>Data sprzedaży</td>
  3. <td $al>Dane Nabywcy</td>
  4. <td $al>Obrót brutto razem<br>VAT razem</td>
  5. ...
  6.  
  7. $cialo .= "<tr>
  8. ...
  9. <td $style>$fv_dane[fv_date_sprz]</td>
  10. <td $style>$nabywca</td>
  11. <td $style>$podliczenia[br]<br><br>$podliczenia[vat]</td>
  12. ...
  13. ";


dane nabywcy masz ze zmiennej $nabywca
idąc tym tropem widzimy: $nabywca = faktura_vat::dane_czlowieczka($fv_dane[fv_na_id],"br");

czyli musisz odnaleźć funkcję składową dane_czlowieczka() klasy faktura_vat
znalazłem tą funkcje, wyciąłem zbędne warunki ze względu że interesuje nas tylko jedno specyficzne wywołanie

  1. public static function dane_czlowieczka($id="", $type="n"){
  2.  
  3. .....
  4. else {
  5. $string
  6. = tool_bag::sql_get("concat(nazwa,'<br>',ulica,'<br>',kod_pocztowy,' ',miasto,'<br>NIP: ',nip)","klienci","id_klienta='$id'");
  7. }
  8.  
  9. return trim($string);
  10. }


zmodyfikuj to wywołanie, a osiągniesz zamierzony tymczasowy cel.
Go to the top of the page
+Quote Post
hunter777
post
Post #11





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 8.02.2017

Ostrzeżenie: (0%)
-----


dziękuję bardzo za pomoc, wszystko rozumiem, namierzyłem te elementy co było łatwe po tak profesjonalnym i czytelnym poście ale niestety zmiany w tym wierszu nic nie dawały na liście przy generowaniu rejestru okazało się gdy zacząłem szukać iż jest osobny katalog klasy, namierzyłem klasę fvwz.php i tam było to wszystko raz jeszcze wpisane, po zmianie tam są efekty i mogę np zmienić nową linię na przecinki, teraz pytanie czy mógłbym zrobić jakoś te osobne kolumny NAZWA, ULICA itd... pewnie trzeba by stworzyć nową funkcję niemniej jednak nadal nie jest to łatwe...


rzeczywiście termin złożenia jpk to 27-02 dziękuję także za to!!

Ten post edytował hunter777 15.02.2017, 13:19:59
Go to the top of the page
+Quote Post
Puszy
post
Post #12





Grupa: Zarejestrowani
Postów: 279
Pomógł: 42
Dołączył: 10.10.2011

Ostrzeżenie: (0%)
-----


Sorry za offtop ale to jeden z lepszych tematów jakie czytałem tutaj na forum (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
hunter777
post
Post #13





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 8.02.2017

Ostrzeżenie: (0%)
-----


Może brzmi to mało ciekawie dla zaawansowanych programistów ale dobrze świadczy o tym forum fakt iż uzyskałem pomoc ponieważ teraz te dane moge przerobić w excelu. Dodam takze, że zmotywowalo mnie to do zapoznania się z funkcjami jezyka PHP i może uda mi się napisać taka funkcje by automatycznie wyciągała do listy to co potrzebuje ale będę miał na to czas do kolejnego miesiąca a teraz jestem uratowany. Na koniec dodam, że 3 programistów nie chciało tego śmietnika w ogóle ruszyć i pozostawało tylko ręczne wprowadzanie danych do excela a teraz to tylko obróbka. Bardzo dziękuję i mam nadzieję dla początkujących coś tu się jednak znajdzie ...
Go to the top of the page
+Quote Post
stefano_F
post
Post #14





Grupa: Zarejestrowani
Postów: 18
Pomógł: 4
Dołączył: 1.02.2013

Ostrzeżenie: (0%)
-----


Cytat(hunter777 @ 15.02.2017, 12:44:21 ) *
teraz pytanie czy mógłbym zrobić jakoś te osobne kolumny NAZWA, ULICA itd... pewnie trzeba by stworzyć nową funkcję niemniej jednak nadal nie jest to łatwe...



Może niezbyt ładne rozwiązanie:

Zamiast
  1. <td $al>Dane Nabywcy</td>

zrobiłbym
  1. <td $al>Nazwa </td><td $al> Adres</td><td $al> NIP </td>


a funkcje wybierającą
zamiast
  1. = tool_bag::sql_get("concat(nazwa,'<br>',ulica,'<br>',kod_pocztowy,' ',miasto,'<br>NIP: ',nip)","klienci","id_klienta='$id'");

zrobiłbym
  1. = tool_bag::sql_get("concat(nazwa,'</td><td $al>',ulica,' ',kod_pocztowy,' ',miasto,'</td><td $al>',nip)","klienci","id_klienta='$id'");


nie wiem jak będzie działał $al w znaczniku <td> bo wymyślam to rozwiązanie na kolanie
nie wiem tez czy tabela jakoś ładnie się kończy, sumą czy jakąś tam ładniejsza stopką, ale tam też byś musiał na wstawić te: </td><td $al> </td><td $al>

Jeżeli zadziała, to w 100% łatwo przeniesiesz do jakiegoś excela który generuje JPK.

Ten post edytował stefano_F 16.02.2017, 13:11:04
Go to the top of the page
+Quote Post
hunter777
post
Post #15





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 8.02.2017

Ostrzeżenie: (0%)
-----


dopiero dzisiaj mogłem to sprawdzić - dziękuje bardzo za pomoc - to działa!

modyfikację trzeba przeprowadzić w polu poniżej "string ="... i można zrobić później copy/past do excela, zamieniamy kolumny miejscami i plik jpk mam już wysłany (IMG:style_emoticons/default/smile.gif)

p.s.
jest jeszcze jeden problem ponieważ ten zaśmiecony system podaje kwoty rozdzielone kropkami a tysiące przecinkami np 1,235.33 zł i excel ma z tym problem ponieważ jak ma kwotę 30.5 to wkleja mi datę 30.maja.2017 oczywiście zamieniam kropki na przecinki i jest prawie ok ponieważ wtedy głupieje z kwotami właśnie powyżej 1000 ponieważ ma dwa przecinki... poradziłem sobie ręcznie ale powalczę jeszcze z kodem i może uda mi się to także przerobić niemniej jednak to już nie jest problem gardłowy tylko kwestia wygody - ponieważ deklaracje takim sposobem mogę składać, dziękuję bardzo raz jeszcze!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 18.09.2025 - 19:22