# ZPL with variable substitution from table record

**URL:** <https://community.tulip.co/t/zpl-with-variable-substitution-from-table-record/4502>\
**Category:** Support, Troubleshooting, & Help\
**Tags:** zpl\
**Created:** [February 7, 2022, 8:33pm UTC](https://community.tulip.co/t/zpl-with-variable-substitution-from-table-record/4502 "2022-02-07T20:33:33Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![pte](https://sea2.discourse-cdn.com/flex020/user_avatar/community.tulip.co/pte/32/444_2.png) [@pte](https://community.tulip.co/u/pte)\
**Post date:** [February 8, 2022, 3:31am UTC](https://community.tulip.co/t/zpl-with-variable-substitution-from-table-record/4502/2 "2022-02-08T03:31:05Z")

</div>

Hello Richard

I can share a few lessons learned from our ZPL experience with Tulip triggers:

- I keep 1 ZPL code and to adjust the printing to the different size of label, I will add ^LS{number positive or negative} at the beginning of the zpl code [Adjusting Left Position and Top Position on Zebra Barcode Printers](https://www.zebra.com/us/en/support-downloads/knowledge-articles/adjusting-left-position-and-top-position-on-zebra-barcode-printers.html)
- All variables need to be text, so timestamp for example should be converted
- ZPL code doesn’t like null variables (it can stop the printing)

An example below:  
 ![image](https://us1.discourse-cdn.com/flex020/uploads/agilemfg/original/2X/1/136b9c8f4b5093dc06c279c19d8f029e79e09c1e.png)  
I hope some of this feedback can help 🙂

---

_[View the full topic](https://community.tulip.co/t/zpl-with-variable-substitution-from-table-record/4502)._
